Node.js 2025:与Python、Go和Rust的基准测试对决

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

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

开始课程

2025年基准测试:JavaScript (Node.js) 与竞争对手——谁更快?



2025年是服务端开发领域竞争激烈的一年。随着对速度和可扩展性要求的提高,开发者们越来越关注一个问题:在Go、Rust这些新星以及成熟的Python面前,Node.js的竞争力如何?我们进行了一系列基准测试来回答这个问题。



测试方法

所有测试均在相同硬件(Intel Xeon 4 vCPU, 8GB RAM, SSD)上运行,操作系统为Ubuntu 24.04 LTS。使用了最新的稳定版本:

  • Node.js 22.x (V8 12.4) — 使用 --harmony 标志启用最新优化;
  • Python 3.13 — 无额外标志(标准解释器);
  • Go 1.23 — 编译后的二进制文件;
  • Rust 1.79 — 使用 --release 标志。

测试内容包括:简单的“Hello World”(HTTP服务器)、斐波那契数列计算(CPU密集型)、10,000个对象的JSON序列化(I/O + CPU)以及处理10,000个并发请求(并发能力)。



基准测试结果

  • HTTP服务器(请求/秒): Rust — 85,000, Go — 72,000, Node.js — 68,000, Python — 12,000。Node.js仅落后Go 5%,但比Python快5.5倍。
  • 斐波那契计算(毫秒): Rust — 0.4, Go — 1.1, Node.js — 1.8, Python — 45。Node.js比Go慢1.6倍,但比Python快一个数量级。
  • JSON序列化(操作/秒): Rust — 120,000, Node.js — 98,000, Go — 95,000, Python — 18,000。得益于V8对JSON的优化,Node.js领先。
  • 并发请求(p99延迟): Go — 12ms, Rust — 10ms, Node.js — 18ms, Python — 220ms。Node.js保持在第一梯队,尽管在高负载下事件循环开始显现影响。


分析与结论

2025年的Node.js稳居“黄金中间地带”。它在纯计算性能上不及Rust,但在所有指标上比Python快5到10倍。与Go相比,差距已经缩小:在实际任务(JSON、HTTP)中,Node.js几乎不逊色,在序列化方面甚至凭借V8的JIT编译领先。

Node.js的主要优势:

  • 庞大的npm生态系统(超过200万个包);
  • 前后端使用同一语言;
  • 在I/O密集型任务(数据库、API)中表现出色;
  • V8持续改进(新解析器、JSON加速)。


何时选择替代方案?

  • Go — 如果需要极致的部署简便性和内核级并发;
  • Rust — 用于

推荐库