外链论坛

 找回密码
 立即注册
搜索
查看: 12|回复: 1

PHP运行时性能基准测试

[复制链接]

2879

主题

1万

回帖

9910万

积分

论坛元老

Rank: 8Rank: 8

积分
99109667
发表于 2024-10-4 13:01:04 | 显示全部楼层 |阅读模式

测试环境

每一个运行时在1或2个Docker容器中运行 每一个容器有1个CPU和1GB RAM 负载测试工具位置于同一Docker网络中 测试应用程序

Symfony供给了运行时组件。按照官方文档,它“从任何全局状态中提取引导规律,以保证应用程序能够在运行时运行,如”。这寓意着,您能够运用任何您爱好的运行时来研发应用程序,但在生产中运行最高性能。因此呢咱们不仅能够运用传统的服务器运行应用程序,还能够运用Swoole,AMPHP和ReactPHP等库。展望将来,最后两人被排除在竞争之外。

负载测试工具

K6用于运行负载测试。每一个运行时运行3次,30秒内有十、100和1000个并发连接。

运行时

Apache(prefork模式)+ mod_php Apache(事件模式)+ PHP-FPM Nginx + PHP-FPM Nginx Unit应用服务器 Nginx Unit应用服务器 Nginx + Roadrunner(fcgi模式) FrankenPHP FrankenPHP(worker模式) Swoole

所有运行时都基于官方Docker镜像。倘若运用镜像,则在构建过程中将应用程序的代码复制到镜像中。PHP 8.3无处不在,除了Nginx Unit。2024年初,Nginx Unit支持的最高PHP版本为8.2。

不幸的是,我找到与Symfony 7兼容的最新版本的ReactPHP和AMPHP运行时。PHPPM GitHub和Dockerhub看起来都被抛弃了。

应用以下PHP和Symfony设置:

运用php.ini-production(附带官方Docker容器) 已启用Opcache 启用JIT 按照Symfony最佳实践配置preload Composer自动加载器已优化 Symfony在生产模式下运行 服务容器转储到单个文件 Symfony缓存在容器构建时期预热

应用程序代码以及容器配置能够在GitHub https://github.com/DimDev/php-runtimes-benchmark上找到。

结果

返回外链论坛: http://www.fok120.com,查看更加多

001_Apache+mod_php和002_Apache + PHP-FPM显示了几乎相同的结果。 003_Nginx+PHP-FPM在工作负载较低(并发10和100)时非常接近001_Apache+mod_php和002_Apache + PHP-FPM。 003_Nginx+PHP-FPM在并发量为1000时,能够服务的请求数是Apache堆栈的2倍 004_Nginx单元。首先-哇!!它比传统和最流行的003_Nginx+PHP-FPM快3倍 我不认为005_Roadrunner和006_Nginx+Roadrunner之间有很大的区别 尽管如此,基于Roadrunner的堆栈比003_Nginx+PHP-FPM快2倍以上 007_FrankenPHP(非工作模式)从性能方向来看非常接近003_Nginx+PHP-FPM 008_FrankenPHP(worker mode). Double WOW!我不相信从第1次尝试和运行负载测试3或4倍。因此呢,当发送1000个并发请求时,FrankenPHP(工人模式)比Nginx+PHP-FPM快10倍。同期面临着一个问题。无法用php-ini. production起步容器。 009_swoole -是双重WOW!.几乎与008_FrankenPHP(wm)相同的速度。非常快。然则,请记住,您的代码应该调节为与Swoole一块运行。针对Symfony,咱们有一个bundle,它扩展了symfony/runtime组件。

责任编辑:网友投稿

回复

使用道具 举报

2916

主题

1万

回帖

9913万

积分

论坛元老

Rank: 8Rank: 8

积分
99139580
发表于 2024-10-6 12:47:19 | 显示全部楼层
谷歌外贸网站优化技术。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|外链论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-10-19 01:17 , Processed in 0.075038 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.