2025年基准测试:Rust对比C++、Go和Python——谁更快?

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

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

开始课程

基准测试 2025:Rust 对战 C++、Go 和 Python——谁主沉浮?



2025 年对于系统编程语言来说是转折性的一年。曾经被视为“时尚新手”的 Rust,不仅稳扎稳打地占据了基础设施开发领域,还深入到了高负载 Web 服务、CLI 工具和嵌入式系统中。我们进行了一系列基准测试,将 Rust 与其主要竞争对手:C++、Go 和 Python 进行了对比。结果甚至让经验丰富的开发者都感到意外。



测试方法

测试在相同硬件上进行(AMD Ryzen 9 7950X,64 GB DDR5,NVMe SSD)。每种语言都使用了最新的编译器和运行时:

  • Rust — rustc 1.80.0,开启优化标志 -C opt-level=3
  • C++ — Clang 18,开启标志 -O3 -march=native
  • Go — Go 1.23,编译时不包含调试符号
  • Python — CPython 3.13,PyPy 7.3(用于对比)

测量了三个关键指标:执行速度(时间,毫秒)、内存消耗(RSS,MB)和吞吐量(对于 Web 服务器,请求数/秒)。



测试结果



1. 计算密集型任务(斐波那契数列、排序、加密)

  • Rust: 12.3 毫秒,2.1 MB
  • C++: 11.8 毫秒,2.3 MB
  • Go: 19.7 毫秒,4.8 MB
  • Python (PyPy): 145.2 毫秒,38.1 MB
  • Python (CPython): 820.4 毫秒,42.5 MB

结论: Rust 在纯性能上几乎追平了 C++(差距小于 5%),但内存使用量却少了 10%。Go 的速度慢 1.6 倍,而 Python 则慢 11 到 66 倍。



2. Web 服务器(HTTP/1.1,10 000 个连接,JSON 响应)

  • Rust (Actix-web): 215 000 请求/秒,14.2 MB
  • Go (net/http): 178 000 请求/秒,19.8 MB
  • C++ (Crow): 209 000 请求/秒,15.1 MB
  • Python (FastAPI + uvicorn): 28 000 请求/秒,52.3 MB

结论: Rust 不仅比 Go 快,其吞吐量还高出 20%,并且内存效率高出 30%。使用 Crow 库的 C++ 与 Rust 几乎并驾齐驱。



3. 文件系统操作(从 CSV 中读取 100 万行)

  • Rust: 0.87 秒,5.3 MB
  • C++: 0.91 秒,5.8 MB
  • Go: 1.42 秒,9.1 MB
  • Python (pandas): 4.21 秒,127 MB

结论: 在输入输出密集型任务中,Rust 略逊于 C++,但显著领先于 Go 和 Python。

推荐库