首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >PHP 将在 2027 年获得 Swoole 团队提供的即时编译器支持

PHP 将在 2027 年获得 Swoole 团队提供的即时编译器支持

作者头像
Tinywan
发布2026-07-01 17:30:30
发布2026-07-01 17:30:30
900
举报
文章被收录于专栏:开源技术小栈开源技术小栈

重磅消息:经过 Swoole 团队的深度研发与审慎规划决定:在 2027 年 AOT 编译器正式发布之际,Swoole 将全面升级为社区版与商业版双轨运营模式。商业版将聚焦企业级需求,提供高级特性、扩展模块及专属技术支持等增值服务;而社区版将坚守开源初心,持续提供免费、核心的基础服务。

Swoole 团队宣布,Swoole Compiler v4 将引入全新的 Native AOT(Ahead-of-Time,提前编译)编译器,这极大地改变了编程领域的格局。

该编译器摒弃了传统的 PHP 解释方式,允许代码直接被编译成原生二进制可执行文件。与传统的解释器相比,性能提升了一个数量级,其性能已经可以与 Rust 和 Go 等语言相媲美了。

Swoole Compiler 4 计划发布一款真正的 PHP AOT 编译器(也称为 Native AOT 编译器),其兼容性大约达到 95% 与 PHP 的兼容程度。当然,像 $$(可变变量)、eval()extract() 这样的动态功能存在一些不可避免的局限性,这是可以理解的——这类限制在动态语言转向 AOT 编译时属于常见挑战。

我们实际上已经进入了针对脚本语言的 AOT 编译时代。对于 PythonRuby 语言来说,类似的努力也在进行中;而 TypeScript 则已经拥有自己成熟的 AOT 编译器了。

这意味着什么?

这意味着我们可以摆脱 PHP 虚拟机(Zend VM)和 JIT 编译器,转而使用能够发挥最大性能的原生代码包。此外,这也意味着在未来,PHP 可能会拥有多种运行时环境,开发者可以根据具体场景灵活选择:

  • 传统 Zend VM + OPcache + JIT 运行时(适合快速开发和 Web 场景)
  • Swoole AOT 原生二进制运行时(适合追求极致性能、部署简化、CLI 工具或云原生场景)

呼吁整个专业界认真对待这一趋势

架构

编译器架构已经开发完成。编译器使用 C++ 语言编写的代码生成器来将代码进一步转换为汇编代码,最终生成可在 Windows、Linux、macOS 等平台上直接运行的原生可执行文件或动态库。

扩展说明

  • 性能表现:根据 Swoole 官方及相关报道,该 AOT 编译器在某些计算密集型场景下可将性能提升高达 150 倍,真正让 PHP 具备系统级语言的执行效率。
  • 技术路线:从 PHP 源码 → AST(抽象语法树) → C++ 代码生成 → 汇编 → 原生二进制,彻底跳过传统解释循环和 VM 开销。
  • 适用场景:高性能后端服务、微服务、命令行工具、独立可执行程序、需要源码保护的商业软件等。
  • 当前状态:编译器架构已基本完成,Swoole/aot-compiler 项目已有早期版本(v0.1.0),计划在 2027 年 推出成熟可商用的 v4 版本。
  • 行业意义:这不仅是 PHP 生态的一次重大性能革新,也反映出整个脚本语言领域从“解释执行 + JIT”向“可选原生 AOT”转型的大趋势。PHP 将继续保持开发体验优势,同时在运行时性能上大幅缩小与 Go、Rust 等语言的差距。

Swoole Compiler v4 正在把 PHP 从传统的“解释型脚本语言”推向“可直接编译为高性能原生二进制”的新时代,2027 年值得全行业期待。这可能是 PHP 历史上最具突破性的性能与部署方式革新之一。

更多

Swoole-Compiler 将提供 PHP Native AOT 编译器,支持将 PHP 代码编译为可执行文件,运算性能提高 150 倍

告别解释执行!用 Swoole AOT 编译你的第一个 PHP Windows 原生应用

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-05-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开源技术小栈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 这意味着什么?
  • 架构
  • 扩展说明
  • 更多
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档