PHP版本:
目前流行的版本包括5.2,5.3,5.4,5.5。官方已经不再更新/支持5.2版本,最后的5.2.17的发布时间是2011年1月6日,甚至后来的拒绝服务漏洞也没能让官方发布5.2.18,只能打非官方的补丁。但是现在国内相当一部分程序只支持PHP5.2。
ZEND版本:
PHP5.2时代叫Zend Optimizer,常用版本包括3.3.3和3.3.9。很多程序对这个Zend Optimizer的版本也有要求。
PHP5.3和PHP5.4开始使用Zend Guard Loader取代Zend Optimizer。有些程序只能支持Zend Optimizer3.3.3或者Zend Optimizer3.3.9,也就意味着这些程序只能使用PHP5.2。
PHP5.5开始内置了opcache,这东西的功能之一是延续Zend Optimizer和Zend Guard Loader的代码优化功能,另一个功能就是,把缓存模块的活也给干了。
缓存模块:
在opcache出现之前,常用的缓存模块包括APC,eAccelerator,XCache。这三者之间如果选择的话,个人建议使用XCache,一是从网上收集到的测试数据综合来看,性能较好,二是版本一直在维护更新。
但是在opcache出现后,导致php5.5如果想支持zend加密的代码就只能安装opcache,但是这货把前面几个缓存模块的活也一起干了,如果安装了opcache再安装其他的缓存模块的话,可能会导致兼容问题和不稳定。另外opcache虽然网上流传的测试表明性能上优于其他模块,但是毕竟是新出的产品,稳定性有待考验。
所以综合前面所有因素,从缓存模块的选择来考虑的话,个人觉得最好的方案是PHP5.5以下版本安装xcache模块再加上对应的ZEND版本(Zend Optimizer,或者Zend Guard Loader),PHP5版本如果需要支持zend则安装opcache,不需要则安装xcache。
最近在写LNAMP安装脚本不得不考虑下这些问题,最后做出的决定是,支持定义安装PHP版本(从5.2到5.5)以及对应的zend(opcache)及xcache版本(放弃APC和eAccelerator)。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。