最近在调研hhvm,所以看了一些hhvm相关的文章,从各个参考文章来看,据说hhvm比目前使用的PHP解释器快60%,而使用内存减少90%。本着对hhvm高性能的好奇心做了一些测试,但是对于测试结果,我只想说呵呵、、、当然这些仅供大家学习参考。
一、测试简介:
HipHop VM(HHVM)是Facebook推出的用来执行PHP代码的虚拟机,它是一个PHP的JIT(Just-In-Time)编译器,同时具有产生快速代码和即时编译的优点。根据Facebook透漏,HHVM在速度方面获得了显著改进,比目前使用的PHP解释器快60%,而使用内存减少90%。
二、测试目的:
HHVM虚拟机以Jit和fastcgi方式执行PHP程序的性能,比PHP原生性能是否有提高。
三、测试环境:
服务器系统:CentOS release 6.3 (Final) CPU:16核 Intel(R) Xeon(R) CPU E5620 @ 2.40GHz 内存: 16G
软件环境: HHVM虚拟机版本:HipHop VM 3.1.0
PHP版本:PHP5.3.28
NGINX版本:NGINX 1.2.8
四、测试工具:
五、测试策略:
一)、普通动态业务测试
二)、cpu测试
六、测试总结:
1、以上RPS数据表明对于普通动态业务而言,HHVM3.1并发性能不如php。
2、以上TPR数据表明在并发数相同的情况下,HHVM3.1的耗时比php高。
3、从cpu的测试效果来看,对于cpu密集型业务,hhvm和php各有优势。(譬如在斐波拉契数列计算上hhvm效果好,但是在累加计算上php表现更好)
综上所述:hhvm可能适合比较复杂的计算,而对于一般的动态业务并不需要hhvm来替代php。我个人觉得其一可能是hhvm本身作为server稳定性相对来说不是很稳定,其二,它本身可能不够成熟,支持php的扩展也不是很好。其三,它提供的fastcgi的接口可能没有php完善。不过hhvm可能还有很多优点和不足,个人理解能力有限。我只能从我测试的角度看出一些不足,如果大家发现其他的优点和不足,希望大家给我更好的建议,多多学习,多多益善。