首页 » PHP教程 » 测试php技巧_PHP运行机会能基准测试

测试php技巧_PHP运行机会能基准测试

访客 2024-10-26 0

扫一扫用手机浏览

文章目录 [+]

运行时

Apache(prefork模式)+ mod_phpApache(事宜模式)+ PHP-FPMNginx + PHP-FPMNginx Unit运用做事器Nginx Unit运用做事器Nginx + Roadrunner(fcgi模式)FrankenPHPFrankenPHP(worker模式)Swoole

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

测试php技巧_PHP运行机会能基准测试

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

测试php技巧_PHP运行机会能基准测试
(图片来自网络侵删)

运用以下PHP和Symfony设置:

利用php.ini-production(附带官方Docker容器)已启用Opcache启用JIT根据Symfony最佳实践配置preloadComposer自动加载器已优化Symfony在生产模式下运行做事容器转储到单个文件Symfony缓存在容器构建期间预热

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

结果

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-FPM008_FrankenPHP(worker mode). Double WOW!
我不相信从第一次考试测验和运行负载测试3或4倍。
因此,当发送1000个并发要求时,FrankenPHP(工人模式)比Nginx+PHP-FPM快10倍。
同时,也面临着一个问题。
无法用php-ini. production启动容器。
009_swoole -也是双重WOW!
.险些与008_FrankenPHP(wm)相同的速率。
非常快。
但是,请记住,您的代码该当调度为与Swoole一起运行。
对付Symfony,我们有一个bundle,它扩展了symfony/runtime组件。

标签:

相关文章

Java代码虚拟化保护技术与应用前景

软件应用的需求日益增长,软件开发过程中对代码的保护成为了一个重要议题。Java作为一种广泛应用于企业级应用的编程语言,其代码虚拟化...

PHP教程 2025-03-02 阅读1 评论0

CAD插件错误代码与应对步骤

CAD(计算机辅助设计)软件在工程设计领域得到了广泛应用。CAD插件作为提升设计效率的重要工具,在提高设计师工作效率的也带来了一定...

PHP教程 2025-03-02 阅读1 评论0

上古卷轴代码规则大全游戏背后的编程奥秘

《上古卷轴》作为一款深受玩家喜爱的角色扮演游戏,自问世以来便以其丰富的世界观、独特的游戏体验和深厚的文化底蕴吸引了无数玩家。在这款...

PHP教程 2025-03-02 阅读1 评论0