首页 > 鉴于PHP7的性能有了长足的进步,使用PHP做一些非WEB领域的事情会不会越来越多?

鉴于PHP7的性能有了长足的进步,使用PHP做一些非WEB领域的事情会不会越来越多?

我是一名PHPer, 原先公司的系统有一个根据客户订单动态推荐商品的模块是用PHP实现的,但是PHP5性能一直是个问题,所以跑起来不是太慢就是死机,最后还是用了第三方公司的分析平台(用JAVA重构的话时间不够了).

PHP7出来后相信这类后台的数据分析工作(至少中小规模)也能胜任吧,所以以后基于PHP7的非WEB领域的库会不会越来越多?


"根据客户订单动态推荐商品的模块"的压力难道不是在数据库SQL查询上吗?怎么可能会是PHP的性能问题?
还有,跑PHP能把服务器跑死机,是不是PHP进程开得太多了?
进程数绝非越多越好,根据内存来划分进程数也是个绝对的错误.
CPU核心就几个,你开再多的进程,只能徒增上下文切换的开销,加重系统负载.
还有,是不是在PHP代码里用了一些curl/file_get_contents之类可能引起较长IO耗时的代码?导致应用太慢?

还有楼主说说你要做的"后台数据分析"到底是什么?方便大家讨论分析,到底是不是PHP真的做不了.

@tablecell 没测试过就不要说一点点好吗?PHP源代码中的 php-src/Zend/bench.php 是一个纯计算类型的测试脚本:

sapi/cli/php ../Zend/bench.php
valgrind --tool=callgrind sapi/cli/php ../Zend/bench.php

PHP7的CPU指令数比PHP5.6减少一半以上,测试耗时从2.115秒减少到0.756秒。在WordPress测试中,PHP7的CPU指令数仅为PHP5.6的1/4!测试耗时从26.756秒减少到10.398秒!

sapi/cgi/php-cgi -T 1000 /var/www/html/bench/wordpress-3.6/index.php > /dev/null
valgrind --tool=callgrind sapi/cgi/php-cgi -T 100 /var/www/html/bench/wordpress-3.6/index.php > /dev/null

这是官方测试的结果:
https://wiki.php.net/phpng

bench.php测试显示,从5.4->5.5->5.6,PHP性能一直有小幅提升.

PHP5.0的bench.php耗时是13秒多,而现在PHP7的耗时仅为不足1秒,说PHP7速度是PHP5.0的13倍,一点都不夸张.

在我的测试中,Xubuntu(i5-3230M)上,简单的time curl WordPress首页测试,PHP7 Beta2比HHVM 3.8.1快32%!PHP7和HHVM均进行了热身,PHP7缓存有opcode,HHVM缓存有bytecode(hhbc即hiphop bytecode).

在ab并发100的测试中,PHP7跟完全触发JIT的HHVM也是相差无几,PHP7这样的性能提升可真的不是比原来的PHP5高一点点呀, @tablecell 请慎重发言,避免误导PHP开发者呀.如果对测试数据存在质疑,欢迎下载我在Ubuntu上打包的适用于64位的Linux的PHP7 Beta2 with Swoole和HHVM 3.8.1自行测试:
http://my.oschina.net/eechen/blog/411534
除了解压即用的二进制包,里面还有详细的打包步骤.


不要把性能归罪给PHP,系统IO才是瓶颈。


现在你们的有一部分业务是偏计算密集型的。我们公司有方案,就是这类偏计算机密集型可以用JAVA或者GO去写,让PHP调用他们的服务。


PHP本来就不慢···所以以前非WEB领域没长足进展应该不是性能问题··


你用PHP写个cli在非ROOT下跑,不超30秒,系统就会自动kill

【热门文章】
【热门文章】