PHP7正式版测试,性能惊艳!(2)

<?php /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ $num = $argv[1]; $ret = array(2); $flag = false; for($i=3; $i<=$num; $i+=2) { $flag = false; $sqrt = sqrt($i); foreach($ret as $prime) { if($i%$prime == 0) { $flag = true; break; } if($prime>$sqrt) { break; } } if(!$flag) { $ret[] = $i; } } echo (count($ret))."\n";

至此,我们基本可以说明问题。这些代码,并没有使用复杂的函数库,也没有大量的网络和IO,性能却得到了至少3倍以上的优化。这真是一个历史性的进步。而在我们过去的性能评测中,语言层面的性能,往往是忽略的,为什么这么讲呢,比如在 XHProf中,就专门有一个选项,XHPROF_FLAGS_NO_BUILTINS,用于对内置的函数或者内部函数不做分析,比如数组、日期等的函数。因为大家往往错过了这块的提升空间,当然,一般人也无法在这块提升,所以才有了 HHVM,也激发了今天的PHP 7。

一轮测试下来,激发起了笔者对PHP 7更多了解的兴趣,想看看扩展和一些常见的框架支持如何,顺手做了如下两个测试。

记得在Alpha1版本的时候,OneAPM是不能支持的,这次行不行呢?笔者拿到 OneApm_php_Agent_1.0.0.18.tar 版,顺利安装。

PHP7正式版测试,性能惊艳!

成功地识别了PHP 7的安装路径。

PHP7正式版测试,性能惊艳!

安装成功。

对于扩展,我是没有信心再测下去了,下面测两个常用的东东,一个是Wordpress,虽然网站被和谐了,但是是什么地球人都知道吧。另外一个是ThinkPHP, 这是国内使用量最广泛的PHP开发框架,绝对第一,不是之一。笔者也是TP的粉丝。

是该夸这两个软件做得好呢?还是该夸 PHP 7的兼容做得好呢,我也不知道了,反正小编看到了初步正常。
Wordpress 后台,在PHP 7 做为 FastCGI 后端时,运行正常。

PHP7正式版测试,性能惊艳!


ThinkPHP 最新版本3.2.3 在PHP 7 下运行正常。

PHP7正式版测试,性能惊艳!


最后我们来做一个压力测试,两个wordpress,一个是基本为空的刚刚安装的版本,一个是发布了数篇文章的版本,我们针对主页进行测试。分别在PHP5.5和PHP7下进行测试,并且两者都分别打开和关闭Zend OpCache,看看响应性能是否有明显变化。
1、PHP 5.5.26 无Zend Opcache 有文章版,20个并发

PHP7正式版测试,性能惊艳!


2、PHP 5.5.26 无Zend Opcache 有文章版,10个并发

PHP7正式版测试,性能惊艳!


3、PHP 5.5.26 无Zend Opcache 无文章版,20个并发

PHP7正式版测试,性能惊艳!


4、PHP 5.5.26 无Zend Opcache 无文章版,10个并发

PHP7正式版测试,性能惊艳!


可见并发并没有对总时间造成影响,有文章相比无文章,总时长慢了6S,平均慢了20%。
下面我们打开PHP 5.5.26 的Zend OpCache。

1、PHP 5.5.26 有Zend Opcache 有文章版,20个并发

PHP7正式版测试,性能惊艳!

2、PHP 5.5.26 有Zend Opcache 有文章版,10个并发

PHP7正式版测试,性能惊艳!

3、PHP 5.5.26 有Zend Opcache 无文章版,20个并发

PHP7正式版测试,性能惊艳!


4、PHP 5.5.26 有Zend Opcache 无文章版,10个并发

PHP7正式版测试,性能惊艳!


可见,是否开启Zend OpCache,对性能影响极为明显。对有文章版有2倍以上提升,对无文章版有4倍以上提升。

下面我们来测试PHP7,同样第一次是无Zend OpCache的版本。
1、PHP 7 无Zend Opcache 有文章版,20个并发

PHP7正式版测试,性能惊艳!


2、PHP 7 无Zend Opcache 有文章版,10个并发

PHP7正式版测试,性能惊艳!


从以上数据可见,在PHP7 对比PHP5.5.26有30%左右的性能提升,再来看一下无文章版。

3、PHP7 无Zend Opcache 无文章版,20个并发

PHP7正式版测试,性能惊艳!


4、PHP 7 无Zend Opcache 无文章版,10个并发

PHP7正式版测试,性能惊艳!

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/706e09f57260da39d4ecd415f8ed2c71.html