PHP 8.5 已正式发布,在主流内容管理系统(CMS)和开发框架上,这一版本能带来哪些性能提升?
为解答这一问题,我们在相同环境下,对 12 款广泛使用的 CMS 和框架进行了基准测试,涵盖 WordPress、WooCommerce、Drupal、Joomla、Laravel、CodeIgniter 等。测试版本包括 PHP 8.2、8.3、8.4 和 8.5;考虑到仍有大量网站运行在 PHP 7.4 上,我们还额外测试了 WordPress 在该版本下的表现。
本次测试旨在清晰、实用地呈现近期 PHP 版本的性能变化趋势,以及升级到 PHP 8.5 后你可预期的效果。
一、PHP 基准测试环境
为确保测试结果一致且可复现,所有基准测试均在相同的隔离环境中通过 Docker Compose 执行。每个 PHP 版本与 CMS/框架都拥有独立的容器、数据库和配置,进行独立测试。
1、测试环境配置
- 服务器:Ubuntu 24.04.3 LTS 虚拟机,30 核 vCPU、120GB 内存、100GB SSD;
- 虚拟化:运行在 Google Cloud Platform 计算实例上的隔离 Docker 环境;
- Web 架构:nginx:alpine 或 nginx:stable(根据 CMS 需求选择)搭配 PHP-FPM(官方 Docker 镜像),禁用 JIT,启用 OPcache 并采用标准生产环境配置;
- 数据库:MariaDB 10.11(官方 Docker 镜像);
- 测试 PHP 版本:7.4、8.2、8.3、8.4、8.5(均基于官方 php:<version>-fpm Docker 镜像);
- 测试工具:ApacheBench(ab),每种配置测试 5 次,每次测试前执行 1 次预热请求。
2、测试参数
- 并发数:15 个同时请求;
- 每次测试请求数:1000 个;
- 结果指标:每秒请求数(req/s),数值越高表示请求处理速度越快,性能越好。
3、配置细节
应用程序和服务器配置均贴近实际生产环境的标准部署方案:
PHP 与 OPcache 配置:
- memory_limit=128M(Drupal 测试时设为 256M);
- max_execution_time=30;
- opcache.enable=1,opcache.jit_buffer_size=0;
- opcache.memory_consumption=128;
- 字符串缓存区:8MB(WordPress 测试时设为 16MB);
- 时间戳检查间隔:2 秒(WordPress 测试时设为 validate_timestamps=0);
- 未对 FPM 进行自定义调优。
框架与 CMS 配置:
- Laravel:APP_ENV=production,APP_DEBUG=false;
- WordPress:WP_DEBUG=false;
- Drupal:生产模式(未启用任何开发模块);
- 未启用调试栏、性能分析插件或开发扩展。
二、测试的 CMS 与框架
选择测试平台时主要考虑了流行度、社区支持、运行中的网站数量、使用趋势以及美国地区的搜索量等因素。
WordPress 仍是全球主流的 CMS,占据超过 60% 的 CMS 市场份额,为超过 3700 万个活跃网站提供支持。在 WordPress 生态中,我们还纳入了 WooCommerce 和 Easy Digital Downloads(EDD)——这两款主流电商插件拥有数百万活跃安装量,且保持稳定增长趋势。
我们还测试了其他热门平台,如 Joomla、Drupal、OpenCart、OctoberCMS 和 Craft CMS,尽管它们的增长趋势各不相同,但仍被广泛使用。同时,我们也测试了 Laravel、CodeIgniter、CakePHP 等框架,这些以开发者为核心的环境见证了 PHP 的快速发展。
提示:Drupal 和 Joomla 目前尚未提供对 PHP 8.5 的官方支持。一旦兼容版本发布,我们将立即补充它们在 PHP 8.5 下的基准测试数据。
下面来看具体的测试结果。
1、WordPress
WordPress.org 是一款开源 CMS,仍是全球最受欢迎的 CMS,为超过 43% 的网站提供支持。
它最初专为博客设计,如今已发展为多功能平台,可支持从个人博客到大型电商网站和企业应用的各类场景。WordPress REST API 还使其能够作为无头 CMS 使用,兼容现代 JavaScript 框架和静态站点生成器(SSG)。
本次测试使用 WordPress 6.8.0 默认安装版本,未添加任何额外插件或缓存层。
WordPress 基准测试结果
测试版本:WordPress 6.8.0;
测试 URL:/;
响应大小:49,788 字节(约 48.6 KB)
测试结果:
- PHP 7.4:139.06 req/s;
- PHP 8.2:146.09 req/s;
- PHP 8.3:142.75 req/s;
- PHP 8.4:148.22 req/s;
- PHP 8.5:148.30 req/s。
WordPress 6.8.0 在 PHP 7.4、8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,从 PHP 7.4 升级到现代 PHP 版本后,WordPress 性能稳步提升。PHP 8.4 和 PHP 8.5 表现最佳,每秒请求数均在 148 左右,其中 PHP 8.5 略占优势。
PHP 8.2、8.3、8.4 和 8.5 之间的性能差距不大,未出现明显的性能回退。最大的性能提升来自仍运行在 PHP 7.4 上的旧网站——升级到 PHP 8.5 后,性能约提升 6.6%。
2、WooCommerce
WooCommerce 是 WordPress 生态中最常用的电商插件,为全球超过 300 万个活跃店铺提供支持,约占全球电商网站总数的 8%。
WooCommerce 充分利用了 WordPress 庞大的生态系统,提供插件、WP-CLI、钩子、过滤器和 REST API 端点等资源,方便用户管理和优化店铺。
WooCommerce 基准测试结果
测试版本:WordPress 6.8.0 搭配 WooCommerce 10.2.2;
测试 URL:/?post_type=product;
响应大小:88,855 字节(约 86.8 KB),PHP 8.5 下为 54,822 字节(约 53.5 KB);
测试结果:
- PHP 7.4:44.20 req/s;
- PHP 8.2:54.67 req/s;
- PHP 8.3:53.74 req/s;
- PHP 8.4:53.37 req/s;
- PHP 8.5:71.02 req/s。
WooCommerce 10.2.2 在 PHP 7.4、8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,从 PHP 7.4 升级到现代 PHP 版本后,WooCommerce 性能显著提升——PHP 8.2 的吞吐量比 PHP 7.4 高出约 23%。PHP 8.2 至 8.4 期间性能保持稳定,仅出现小幅波动。
最引人注目的是 PHP 8.5 的表现:每秒请求数达到 71.02,比 PHP 8.4 提升约 33%。这一飞跃与测试中响应大小的显著减小有关,推测是输出结构或渲染开销的优化降低了负载成本。
3、WordPress Easy Digital Downloads(EDD)
Easy Digital Downloads(EDD)是一款专注于数字产品(下载资源、许可证、订阅服务)销售的 WordPress 电商插件。它广泛应用于软件、课程、媒体资产和会员服务等场景,尤其适合需要简化结账流程和文件交付流程的业务。
EDD 基准测试结果
测试版本:WordPress 6.8 搭配 Easy Digital Downloads 3.5.2;
测试 URL:/?page_id=9;
响应大小:54,177.75 字节(约 52.92 KB);
测试结果:
- PHP 8.2:85.80 req/s;
- PHP 8.3:85.69 req/s;
- PHP 8.4:85.54 req/s;
- PHP 8.5:86.52 req/s。
EDD 3.5.2 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,EDD 在 PHP 8.2 至 8.5 版本中性能表现稳定,各版本吞吐量几乎一致。这表明 EDD 的工作负载已得到高度优化,近期 PHP 版本的增量改进并未对其性能产生显著影响。
4、Laravel
Laravel 是一款开源 PHP 框架,为开发者提供了一系列工具和资源,用于构建现代 Web 应用程序。
Laravel 兼具灵活性和易用性,内置命令行界面(Artisan)、原生身份验证和模型-视图-控制器(MVC)架构等功能。
Laravel 基准测试结果
测试版本:Laravel 12.33.0;
测试 URL:/;
响应大小:80,650 字节(约 78.8 KB);
测试结果:
- PHP 8.2:730.11 req/s;
- PHP 8.3:708.44 req/s;
- PHP 8.4:695.98 req/s;
- PHP 8.5:700.33 req/s。
Laravel 12.33.0 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,PHP 8.2 表现最佳,吞吐量达到 730.11 req/s,PHP 8.3、8.4 和 8.5 紧随其后。
各 PHP 8.x 版本之间的性能差异较小,处于正常波动范围内,表明 Laravel 12.x 在现代 PHP 版本中保持着稳定、可预测的性能表现。
提示:Laravel 的性能特征可能因框架版本而异。例如,针对 Laravel 10.x 的单独测试显示,其在各 PHP 版本中的相对性能模式与 Laravel 12.x 不同。因此,性能结论应始终与所测试的特定 Laravel 版本相关联。
5、Joomla
Joomla 是一款流行的开源 CMS,基于模型-视图-控制器(MVC)Web 应用框架构建,该框架可独立于 CMS 用于开发在线应用程序。它具有灵活的系统架构,得益于庞大的扩展库,易于扩展和自定义。
Joomla 基准测试结果
测试版本:Joomla 5.2.2;
测试 URL:/;
响应大小:7,713 字节(约 7.5 KB);
测试结果:
- PHP 8.2:290.30 req/s;
- PHP 8.3:287.37 req/s;
- PHP 8.4:289.23 req/s。
Joomla 5.2.2 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,Joomla 在所有测试的 PHP 版本中性能表现非常稳定,吞吐量保持在 287 至 290 req/s 之间,未出现明显的性能回退或飙升。PHP 8.2 在本系列测试中表现最佳,但 PHP 8.2、8.3 和 8.4 之间的差异极小,在 1% 范围内。
6、Drupal
Drupal 是一款功能强大的开源 CMS,以灵活性、可扩展性和安全性著称,是企业网站、大学和政府机构的首选。它特别适合需要自定义数据结构、多语言支持和基于角色的内容工作流的复杂网站。
2025 年 1 月,经过超过 14 年的社区支持,Drupal 7 正式终止支持(EOL)。尽管如此,在超过 68.4 万个活跃的 Drupal 网站中,仍有 31% 运行在 Drupal 7 上。因此,为反映过渡时期的实际使用情况,我们在基准测试中同时纳入了 Drupal 7、Drupal 10 和 Drupal 11。
提示:由于 Drupal 7 已终止支持,不支持 PHP 8.4 及以上版本;Drupal 11 要求 PHP 8.3 及以上版本。目前 Drupal 10 和 11 尚未提供对 PHP 8.5 的官方兼容性支持,因此未纳入 PHP 8.5 的基准测试。
Drupal 基准测试结果
测试版本:Drupal 7、10、11;
测试 URL:/;
响应大小:
- Drupal 7:7,985 字节(约 7.8 KB);
- Drupal 10:16,476 字节(约 16.1 KB);
- Drupal 11:15,606 字节(约 15.2 KB)。
测试结果:
Drupal 7:
- PHP 8.2:907.53 req/s;
- PHP 8.3:900.26 req/s。
Drupal 10:
- PHP 8.2:1401.43 req/s;
- PHP 8.3:782.84 req/s;
- PHP 8.4:1391.39 req/s。
Drupal 11:
- PHP 8.3:782.84 req/s;
- PHP 8.4:817.40 req/s。
Drupal 7、10、11 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,在所有测试版本中,Drupal 10 性能表现最为出色,PHP 8.4 下吞吐量达到 1407 req/s,PHP 8.2 下表现相近。
Drupal 11 作为较新的版本,性能表现强劲但略低于 Drupal 10,吞吐量在 780 至 840 req/s 之间。Drupal 7 在 PHP 8.2 和 8.3 下保持约 920 req/s 的吞吐量,但仍落后于更现代的 Drupal 版本。
7、CakePHP
CakePHP 是一款现代 PHP 框架,旨在帮助开发者快速、高效地构建健壮的 Web 应用程序。
最新版本 CakePHP 5 在性能和开发者体验方面进行了重大改进,包括更新的 ORM、优化的依赖注入、简化的中间件管理以及全框架更强的类型安全性。
CakePHP 基准测试结果
测试版本:CakePHP 5.2.0;
测试 URL:/;
响应大小:7,573 字节(约 7.4 KB);
测试结果:
- PHP 8.2:74.70 req/s;
- PHP 8.3:75.53 req/s;
- PHP 8.4:74.16 req/s;
- PHP 8.5:73.76 req/s。
CakePHP 5.2.0 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,CakePHP 在所有测试的 PHP 版本中性能表现稳定,结果在 73 至 76 req/s 之间。PHP 8.3 在本系列测试中表现最佳,但整体差异较小。
8、CodeIgniter
CodeIgniter 是一款轻量级 PHP 框架,专为需要快速、安全且精简基础架构的全功能 Web 应用程序开发者设计。
它保留了标志性的简洁性,同时引入了现代标准,如 PSR 兼容性、优化的依赖管理、上下文敏感转义以及内置的 CSRF/XSS 攻击防护机制。
CodeIgniter 基准测试结果
测试版本:CodeIgniter 4.6.3;
测试 URL:/;
响应大小:46,103 字节(约 45 KB),PHP 8.5 下为 17,243 字节(约 17 KB);
测试结果:
- PHP 8.2:1,216.41 req/s;
- PHP 8.3:1,197.53 req/s;
- PHP 8.4:1,214.03 req/s;
- PHP 8.5:1,874.14 req/s。
CodeIgniter 4.6.3 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,CodeIgniter 是本次基准测试中性能最快的框架。PHP 8.2 至 8.4 的吞吐量非常接近,均在 1200 req/s 左右。
最引人注目的是 PHP 8.5 的表现:吞吐量飙升至 1874 req/s,比 PHP 8.4 提升 54%。这一增长与 PHP 8.5 下响应大小的显著减小(17 KB 对比 45 KB)有关,推测是测试环境中渲染输出、路由行为或默认模板内容的变化所致。
无论原因如何,CodeIgniter 在 PHP 8.5 下的吞吐量均高于所有测试的框架。
9、Craft CMS
Craft CMS 是一款灵活的、以内容为核心的 CMS,旨在为设计师、开发者和内容团队赋能,创建自定义数字体验。它让团队能够完全控制结构、设计和工作流,因此成为创意机构和企业品牌的首选。
Craft CMS 基准测试结果
测试版本:Craft CMS 5.0;
测试 URL:/;
响应大小:6,257 字节(约 6.1 KB);
测试结果:
- PHP 8.2:201.23 req/s;
- PHP 8.3:197.04 req/s;
- PHP 8.4:196.23 req/s;
- PHP 8.5:197.70 req/s。
Craft CMS 5.0 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,Craft CMS 在所有 PHP 8.x 版本中性能表现非常稳定,结果在 196 至 201 req/s 之间。PHP 8.2 在本系列测试中表现最佳,但各版本之间的差异极小。
10、October CMS
October CMS 是一款基于 Laravel 的现代 CMS,专为重视简洁性、灵活性和性能的开发者设计,为全球超过 10 万个网站提供支持。
基于 Laravel 框架的基础使其成为已使用 Laravel 的团队的自然选择,既提供了熟悉的结构,又添加了强大的可视化后端用于内容编辑。October CMS 的模块化设计、插件市场和可重用 CMS 组件,让开发者能够在不牺牲质量或自定义能力的前提下加快开发速度。
October CMS 基准测试结果
测试版本:October CMS 4.0(基于 Laravel 12.0);
测试 URL:/;
响应大小:17,211 字节(约 16.8 KB);
测试结果:
- PHP 8.2:173.54 req/s;
- PHP 8.3:152.75 req/s;
- PHP 8.4:151.38 req/s;
- PHP 8.5:162.71 req/s。
October CMS 4.0 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,October CMS 在 PHP 8.2 下表现最佳,吞吐量达到 173.54 req/s,随后在 PHP 8.3 和 8.4 下出现明显下降。PHP 8.5 呈现显著回升,攀升至 162.71 req/s,但仍未达到 PHP 8.2 的峰值。
这一趋势与基于 Laravel 构建的框架一致,在各 PHP 8.x 版本中出现小幅波动,未出现明显的性能回退或大幅提升。
11、OpenCart
OpenCart 是一款流行的开源电商平台,为全球超过 47 万个店铺提供支持。它免费易用,安装简便,灵活性足以支持各类规模的企业。
OpenCart 提供强大的店铺管理工具,用户可通过直观的控制面板管理产品、订单、客户、税收和优惠券。它内置 SEO 优化功能,支持通过单个管理面板管理多个店铺,并通过庞大的市场连接数千个扩展和主题。
OpenCart 基准测试结果
测试版本:OpenCart CMS 4.1.0.3;
测试 URL:/;
响应大小:32,713 字节(约 32.0 KB);
测试结果:
- PHP 8.2:143.47 req/s;
- PHP 8.3:142.04 req/s;
- PHP 8.4:141.54 req/s;
- PHP 8.5:142.45 req/s。
OpenCart CMS 4.1.0.3 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,OpenCart 在所有 PHP 8.x 版本中性能表现极其稳定,结果集中在 141 至 143 req/s 之间。
PHP 8.2 表现最佳,而 PHP 8.5 紧随其后,达到 142.45 req/s,未出现性能回退,保持稳定的吞吐量。
12、Grav
Grav 是一款现代开源扁平文件 CMS,强调简洁性、速度和灵活性。与传统的数据库驱动系统不同,Grav 使用 Markdown 格式的纯文本文件存储内容,使其极其轻量且易于部署。
Grav 基准测试结果
测试版本:Grav 1.8.0;
测试 URL:/;
响应大小:13,814 字节(约 13.5 KB);
测试结果:
- PHP 8.2:600.36 req/s;
- PHP 8.3:603.66 req/s;
- PHP 8.4:586.49 req/s;
- PHP 8.5:1,029.07 req/s。
Grav 1.8.0 在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
测试结果显示,Grav 在 PHP 8.2 至 8.4 版本中性能表现稳定,吞吐量在 590 至 605 req/s 之间。PHP 8.5 下性能提升约 75%,达到 1029 req/s,是 Grav 在所有测试中的最佳结果。
总结
在 2025 年的本次 PHP 基准测试中,我们对 12 款 CMS 和框架进行了全面测试。结果显示,对于大多数工作负载,PHP 8.2、8.3、8.4 和 8.5 之间的性能差异并不显著。
所有测试的 CMS 和框架在 PHP 8.2、8.3、8.4 和 8.5 下的性能表现(单位:req/s)。
现代 PHP 已经过高度优化,增量版本更新本身很少会带来大幅性能提升。升级到最新版本并非提升应用程序速度的万能捷径。
尽管这些基准测试展示了各 CMS 或框架在相同实验室环境下的性能表现,但实际生产环境中的性能很大程度上取决于背后的托管环境。CPU 分配、PHP 工作进程数、缓存层、容器隔离和数据库优化等因素,都会影响 PHP 原始引擎速度转化为实际页面加载速度的效果。
尤其是 WordPress、WooCommerce 和 Easy Digital Downloads,在高流量或繁重电商负载下,托管环境的优化对其性能提升更为明显。
这正是托管平台可以为你优化的层面。在 Kinsta,我们的平台经过精心设计,旨在消除基础设施瓶颈,为所有工作负载提供稳定、高性能的 PHP 执行环境。
-
广告合作
-
QQ群号:4114653















