OpenLiteSpeed 版本为 1.6.21,php 版本是 7.4 和 8.0,ngnix 版本为 1.20,全部是编译安装。测试结果如下。
环境 | 正常 | opcache | 横向对比 | OpenLiteSpeed php7.4 | 4.10560297966 | 3.7856299877167 | 1.08 | OpenLiteSpeed php8.0 | 4.316696882247 | 4.075221061706 | 1.06 | Nginx php7.4 | 17.157423019409 | 11.849323034286 | 1.45 | Nginx php8.0 | 16.670356035233 | 1.5372290611267 | 10.84
|
2 核 2G,其实测试的都是单核性能,几核几 G 其实关系不大。测试代码如下:
- <?php
- function msec()
- {
- list($sec,$msec) = explode(' ', microtime());
- return (floatval($sec) + floatval($msec)) ;
- }
- $s_time = msec();
- function fib($n) {
- if ($n == 1 || $n == 2) {
- return 1;
- }
- return fib($n - 1) + fib($n - 2);
- }
- echo fib(40);
- $e_time = msec();
- echo '<br>';
- echo $e_time - $s_time;
复制代码
php7 和 php8 在 OpenLiteSpeed、nginx 上的性能测试(包括是否开启 opcache)总结:
1、php8.0 在未开启 opcache 的时候和 php7.4 性能差距不大,在误差范围内,多次测试,略有提升。
2、php8.0 在开启 opcache 的时候和 php7.4 对比性能提升极为显著,达到了 10 倍以上的提升,可以说是质的飞跃。
3、OpenLiteSpeed 对 php8 以前版本的优化确实好,在 php8.0 加 opcache 的测试加入前对比 ngnix 获得了绝对的优势,4 倍以上的性能提升,而且不需要开启 opcache。
4、OpenLiteSpeed 对 php8.0 的优化却不够,对比 php7.4 几乎没有提升。
5、OpenLiteSpeed 中开启 opcache 对性能影响很小,甚至有些测试中还会降低。
建议:
如果程序兼容,尽可能升级 php8,同时开启 opcache,性能提升实在是太明显了。 |