2025年Java:与竞争对手的基准测试结果

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

2025年基准测试:Java 与竞争对手——谁更快?



2025年初,TechEmpower 团队和独立爱好者发布了热门编程语言性能基准测试的最新结果。焦点集中在 Java 上,它随着 Java 25 和 Project Loom 的发布而持续演进。我们分析了数据并准备了简要概述:与 Go、Rust、C#、Python 和 Kotlin 相比,Java 的地位发生了怎样的变化。



测试方法

测试在典型负载下进行:Web 请求(JSON 序列化)、数据处理(循环、计算)、内存操作和启动速度。使用了各语言和框架的最新稳定版本(Java 使用 Spring Boot 4,Go 使用 Gin,Rust 使用 Actix,C# 使用 .NET 9)。



结果:执行速度

  • Java (Spring Boot 4 + Virtual Threads): 约 185,000 请求/秒。得益于 Project Loom,结果出色——虚拟线程降低了并发开销。
  • Go (Gin): 约 210,000 请求/秒。纯 Web 速度领先,但与 Java 差距极小。
  • Rust (Actix): 约 230,000 请求/秒。绝对领先,但开发和编译复杂度仍然很高。
  • C# (.NET 9): 约 175,000 请求/秒。接近 Java,但在微优化方面稍逊一筹。
  • Python (FastAPI): 约 45,000 请求/秒。预期较慢,但在编码速度上领先。
  • Kotlin (Ktor): 约 180,000 请求/秒。几乎与 Java 相同,这很合理——它在 JVM 上运行。


内存消耗

Java 在这方面传统上受到批评,但 Java 25 凭借改进的 G1 GC 和紧凑字符串显示出显著进步:

  • Rust: 最低消耗(每个应用约 15 MB)。
  • Go: 约 25 MB。
  • Java: 约 60 MB(Java 17 时为 100+ MB)。
  • C#: 约 70 MB。
  • Python: 约 40 MB,但 GC 较慢。


启动速度

得益于 GraalVM Native Image 和 Project Leyden,Java 将简单服务的启动时间缩短至 0.3–0.5 秒。这与 Go(0.2 秒)和 Rust(0.1 秒)相当。此前 Java 在此项上以 1.5–2 秒的成绩落后。



总结与展望

2025年的基准测试表明,Java 不再“慢”。Project Loom 和 GraalVM 使其重回性能前三。Java 在原始数据上落后于 Rust 和 Go,但在生态系统、成熟度和开发者可用性方面胜出。对于企业级解决方案、微服务和高负载系统,Java 仍然是最佳选择之一。



如果您想更深入地学习 Java 25 或尝试 Virtual Threads 的实际应用,请查看我们在 PythonLib 上的课程。我们正在准备一系列关于现代 Java 的文章。

推荐库