Python社区在2026年4月迎来了两个看似独立实则深度关联的里程碑:Python 3.15的JIT编译器终于"回到正轨",以及Rust for CPython项目发布了最新进展报告。这两条线索编织在一起,勾勒出的是编程语言演进的一个根本性转向:动态语言的性能天花板正在被系统级语言从底层击穿。
JIT编译器:曲折的回归之路
Python 3.15 alpha 7中的JIT编译器经历了一段颇为戏剧化的旅程。早期版本中JIT的性能表现不达预期,一度引发社区对整个方向的质疑。但最新的进展报告表明,核心团队找到了正确的优化路径。
JIT对Python意味着什么?简单说,传统CPython是逐行解释执行的,每一行代码都要经过"解析→编译为字节码→解释执行"的完整流程。JIT则在运行时识别"热点代码"(频繁执行的代码路径),将其直接编译为机器码,跳过解释层。
关键的技术决策在于分层编译策略:
- 第0层:传统解释器,处理只执行一次的冷代码
- 第1层:轻量级JIT,快速编译温热代码
- 第2层:优化JIT,对热点代码进行深度优化
这种分层方式避免了"编译一切"的开销,同时确保了最关键的代码路径获得最大加速。在实际benchmark中,热点密集型代码的性能提升达到了2-5倍。
Rust for CPython:不是替代,而是重铸
2026年4月的Rust for CPython进度更新揭示了一个雄心勃勃的计划:用Rust逐步重写CPython的核心组件。这不是要"用Rust替代Python",而是在保持Python语法和生态完全兼容的前提下,用Rust重写解释器内部的关键模块。
为什么是Rust?三个原因缺一不可:
- 内存安全:CPython的C代码库积累了数十年的内存管理问题。Rust的所有权系统从编译期就消除了这些隐患。
- 并发安全:Python的GIL(全局解释器锁)一直是多线程性能的瓶颈。Rust的并发模型为未来移除GIL提供了更安全的基础。
- 与JIT的协同:Rust编写的底层组件更容易被JIT编译器优化,因为Rust的类型系统提供了更丰富的静态信息。
双螺旋效应
JIT和Rust集成不是两个独立的优化——它们构成了一个正反馈循环:
| |
这个循环的终极目标是让Python在保持其"简单易用"核心价值的同时,在性能上逼近Go和Java。这听起来像是天方夜谭,但当你把JIT的运行时优化和Rust的零成本抽象结合起来时,理论上的性能上限确实在大幅提高。
对AI生态的深远影响
Python在AI/ML领域的统治地位一直有一个尴尬的注脚:核心计算都不是Python做的。PyTorch、TensorFlow的底层是C++和CUDA,NumPy的底层是C和Fortran。Python只是"胶水语言"。
JIT+Rust的组合正在改变这个格局:
| 层级 | 现状 | Python 3.15+ 目标 |
|---|---|---|
| 模型推理 | C++/CUDA | Rust绑定 + JIT加速的Python前端 |
| 数据预处理 | 混合Python/C | 纯Python可达到接近C的速度 |
| 训练循环 | Python协调,C++执行 | Python直接执行热点循环 |
| Agent框架 | 纯Python,性能依赖异步 | JIT加速的同步/异步混合 |
| 部署 | 需要C扩展编译 | Rust组件跨平台预编译 |
特别值得关注的是Agent框架这一行。当前AI Agent的一大性能瓶颈在于Python端的协调逻辑——工具调用编排、上下文管理、多轮对话状态维护。这些代码通常是纯Python编写的,JIT对它们的加速效果将直接降低Agent的端到端延迟。
Rust 1.95与Go:竞争格局的微妙变化
同期发布的Rust 1.95.0和Go博客关于内存分配优化的文章提供了有趣的对照。Go的"栈上分配"优化和Rust的持续稳定发布节奏表明,系统级语言之间的竞争正在从"谁更快"转向"谁的生态更友好"。
Cloudflare最近的博客披露了他们在Rust Workers中实现panic和abort恢复的工程细节——这类生产环境中的可靠性经验正是Rust生态成熟度的真实指标。当工业界愿意在生产环境中用Rust处理关键路径时,说明这门语言已经跨过了"可用"到"可信赖"的门槛。
我的判断
Python 3.15-3.17将是分水岭。 JIT的成熟加上Rust组件的逐步替换,将让Python的性能在2027年底提升到当前的3-5倍。这不会让Python变成C++,但会让"因为性能不够而不得不用其他语言"的场景减少80%。
Rust不会取代Python,但会成为Python的骨骼。 未来的CPython将是一个"Python皮肤+Rust骨架+JIT肌肉"的混合体。普通开发者完全不需要学Rust,但他们将默默享受Rust带来的安全和性能红利。
对开发者的建议:
- 如果你写Python库:现在开始学Rust,未来的Python扩展将以Rust为首选而非C
- 如果你做AI Agent:关注Python 3.15的JIT表现,它可能让你省掉很多"用C++优化"的工作
- 如果你在选新项目语言:Python的性能劣势正在快速缩小,不要因为"性能焦虑"就放弃Python生态的巨大优势
参考链接
- Python Insider - Rust for CPython Progress Update April 2026
- Python Insider - Python 3.15’s JIT is now back on track
- Python Insider - Python 3.15.0a8 release
- Rust Blog - Announcing Rust 1.95.0
- Go Blog - Allocating on the Stack
- Cloudflare Blog - Making Rust Workers reliable
- Mitchell Hashimoto - Simdutf Can Now Be Used Without libc++