最近刷技术社区,总能刷到一种论调:国外程序员都在转Rust了,Java又老又慢,迟早被取代。
这话听多了,连我都有点信。但直觉归直觉,判断一门语言的地位,还是得拿数据说话。
我翻了4份有代表性的公开报告和基准测试——Stack Overflow 2025开发者调查、TIOBE语言排行榜、GitHub年度Octoverse报告,以及TechEmpower和Sharkbench两组性能基准。结论比"谁取代谁"有意思得多。
第一份数据:用的人Java多,爱的人Rust多
Stack Overflow的年度开发者调查是业内样本量最大的语言调查之一,2025年有超过3万名开发者参与。它同时统计三个维度:过去一年在用(使用率)、用过还想继续用(喜爱度)、没用过但想学(渴望度)。
结果非常分裂。
使用率上,Java是29.4%,Rust是14.8%,Java接近Rust的两倍;只看专业开发者,Java是29.6%对14.5%,差距基本一样。换句话说,今天靠写代码吃饭的人里,Java用户依然是Rust的两倍体量。
但一翻到喜爱度,剧本完全反过来:Rust是72.4%,Java只有41.8%。Rust已经连续多年霸占"最受喜爱语言"榜首,用过的人里七成二舍不得走。渴望度同样是Rust领先,29.2%对15.8%,差不多翻倍——排队想学Rust的人,比想学Java的多得多。
这组数据精准地概括了两门语言当下的处境:Java是"饭碗基本盘",人多、活多、存量大;Rust是"民心所向",基数小但口碑炸裂,需求跑在普及前面。
第二份数据:排行榜和代码仓库里,Java依然稳坐前排
再看两个衡量"大盘"的指标。
TIOBE指数综合搜索引擎、课程、工程师数量等数据给语言排名。2026年9月的榜单上,Java排第4,评分7.54%;Rust的历史最高位只到第12名上下,评分在1%量级。两者目前还不是一个体量级别的选手。
GitHub的年度Octoverse报告看的是真实代码产出。2025年报告里,按贡献者数量排名,TypeScript首次登顶,Java稳居第4,过去一年贡献者净增约17.5万,同比增长20.73%,报告原话是"企业级驱动的稳定增长"。Rust则被点名为系统编程语言里上升势头最猛的之一。
Rust自己的年度调查State of Rust 2025也给出了增长侧的数字:主要Rust开发者约70.9万人,比2023年增长55%;企业采用率接近49%。
一边是体量大、还在缓慢增长的Java,一边是基数小、增速惊人的Rust。这不是新王登基,更像是新军扩张。
第三份数据:性能Rust确实强,但强的方式和你想的不一样
说完流行度,说大家最关心的性能。
先看Sharkbench在2025年8月做的Web框架基准:同样的硬件(Ryzen 7 7800X3D,Docker限制1核),预热后持续打并发请求,测吞吐量、延迟和内存。
结果有点反直觉。
峰值吞吐量第一的不是Rust,而是Java的响应式框架Vert.x,每秒23116个请求,略高于Rust Actix的21965和Axum的21030。JVM的JIT即时编译在长时间预热后,峰值性能确实能打,"Java慢"在长跑服务上是个过时的印象。
但代价写在旁边那一列:Vert.x吃掉了484MB内存,而吞吐几乎相同的Rust Axum只要8.5MB,相差约57倍。换算成单位内存效率,Axum每MB内存能扛约2100个请求/秒,Vert.x只有约46个,大家熟悉的Spring Boot更是只有17个左右。
Rust性能优势的真正来源,是它没有垃圾回收器(GC)。Java对象不用手动管理,JVM定期回收内存,这在绝大多数业务里完全不是问题,但GC偶尔的停顿会拉高P99尾延迟。基准测试里,高并发压力下Java(G1GC)的P99延迟能膨胀到中位数的20到50倍,而Rust始终稳定在3到5倍。对交易、游戏、实时通信这种"每个请求都不能慢"的场景,这种确定性比平均速度更值钱。
顺带一提,Java也没躺平:ZGC垃圾回收器已经把暂停压到亚毫秒级,JDK 21引入的虚拟线程让并发成本大幅下降,GraalVM还能提前编译成原生二进制。差距在缩小,只是内存模型上的代差没法靠优化完全抹平。
第四份数据:最接近真实业务的测试,赢家和输家都很意外
纯JSON序列化这种测试,Rust可以比Java快一个数量级(每秒50到100万对5到10万),但这种测试离真实业务太远。TechEmpower的Fortunes测试被公认为最接近真实Web应用:要查PostgreSQL数据库、内存里插一行数据、排序、HTML转义、再套模板渲染。
Round 23在56核硬件上的成绩:Rust的xitca-web约每秒58.8万排第一,Java轻量框架Jooby约40.4万,Rust Axum约40万,而Java最主流的Spring Boot只有6到8万。
两个细节值得单独说。
第一,同为Java,轻装的Jooby成绩是Spring Boot的近6倍。很多时候你选的框架比语言本身更影响性能——Spring全家桶为开发效率和生态整合付了不小的运行时开销,这是主动的取舍,不是Java不行。
第二,也是最重要的泼冷水环节:一旦每个请求混入5到20次数据库调用,语言之间的差距会被迅速抹平到2到5倍。一次查询来回1到2毫秒,20次就是20到40毫秒,语言层从0.1毫秒变成2毫秒,用户根本感知不到。对绝大多数写业务系统的团队来说,SQL优化、索引、连接池、缓存策略,远比换语言重要。
那到底谁在真的用Rust?
看清数据就会发现,Rust的地盘非常明确:它是来替代C/C++的,不是来替代Java的。
目前Rust啃下来的,全是基础设施和系统层:Linux内核从6.1版本开始接受Rust写驱动,Android和Windows都在用Rust重写敏感组件,AWS用Rust写了Serverless底层Firecracker,Cloudflare的边缘计算、Discord的核心服务都有Rust的身影。美国网络安全部门CISA还要求关键基础设施厂商提交内存安全路线图,政策层面在给Rust这类语言推波助澜——Rust在编译期就消灭了一大类内存漏洞,这是GC语言和C/C++都给不了的。
而Java的地盘——银行核心系统、电商交易、企业ERP、大数据平台、安卓存量、数以千万计的后端岗位——Rust基本没有正面进攻。国外大厂的真实玩法是混合架构:业务层继续用Java/Go,把网关、代理、实时引擎这类性能敏感组件用Rust重写。
我的看法
回到开头那个问题:国外是不是都在用Rust?Java是不是性能不行?
四份数据给出的答案是:
论存量和工作机会,Java仍是两倍于Rust的庞然大物,短期看不到被颠覆的可能;论口碑和增速,Rust是这十年最猛的语言,没有之一。
论性能,Rust总体更快,内存省几十倍,延迟更稳,在系统层和资源敏感场景是碾压级的;但Java预热后的峰值吞吐并不丢人,在普通业务系统里两者差距远没有传说中那么大,真正的瓶颈通常是数据库。
所以选型建议也很朴素:你做的是CLI工具、数据库、网关、嵌入式、边缘计算、实时系统,或者要替掉手里的C/C++,Rust值得投入,这也是它在国外增长最快的方向;你做的是企业业务后端、大数据、安卓,团队招人要容易、交付要稳,Java依然是最务实的选择,而且还在持续进化。
语言之争最无聊的地方,就是非要争出一个生死。现实是Java和Rust根本不在一条赛道上,它们各自的对手,一个是老去的自己,一个是盘踞系统层几十年的C/C++。
对普通开发者来说,真正的信号是:Rust已经过了"小众玩具"阶段,值得放进你的学习清单;但Java程序员完全没必要焦虑——你的护城河从来不是语言本身,而是上面那一整套生态和工程经验。
热门跟贴