Zend OPCache的前身是Zend Optimizer + (Zend O+),在PHP5.5的发行版本中自带了Zend O+,并从新命名为:Zend OPCache。可是默认是没有启用的,能够在ini文件中enable一下。php
据统计,zend opcache比apc性能要好,能够提高提高 5%-9%。git
值得关注的是Zend OPCache支持PHP5.2.0+的版本,也就是说只要是5.2以上的PHP,均可以是用Zend OPCache,而不需必定要升级到PHP5.5,因此在咱们目前的生产站点能够尝试使用Zend OPCache,如基于Drupal六、Drupal7的PHP5.2,PHP5.3等版本。github
Drupal大学上也有关于这个问题的讨论,连接一下:Zend OPCache和APC能共用吗?web
安装Zend OPCache,推荐使用自带源或者PECL包的安装方式。缓存
yum install php-pecl-zendopcache.x86_64 -y |
启用Zend OPCache, 编辑 /etc/php.d/opcache.ini 文件bash
zend_extension=/usr/lib64/php/modules/opcache.so ; Determines if Zend OPCache is enabled opcache.enable=1 |
重启web服务器便可,查看info,便可看到Zend OPCache项或者使用 php -i|grep opcache。服务器
相关问题,
1. Zend OPCache是作opcache的缓存,那么APC是还须要?我的认为,这个就不须要了,由于功能重复,虽然两个同时安装没有什么bug,可是仍是不推荐使用。
ServerFault上面的也有关于apc和Zend OPCache公用的讨论,推荐不要一块儿用。
http://serverfault.com/questions/610524/can-zend-opcode-cache-and-apc-cache-run-together-on-same-serversession
2. 禁用apc相关的处理方案。
若是不使用apc,apc_store等相关apc的函数须要禁用。若是系统里面有不少相关的apc函数,可使用apcu模块,此模块只有apc的user cache功能。
还有apc的上传进度相关功能须要代替,可使用PHP自带的session,session.upload-progress.enabled
http://php.net/manual/en/session.configuration.php#ini.session.upload-progress.enabled框架
3. save_comments选项函数
opcache.save_comments=1 |
若是禁用此选项,那么PHP中全部的comment会被禁用,性能会提高,可是有些框架可能会受影响,好比Wordpress,Drupal八、PHPUnit等,建议不要禁用。
4. Zend OPCache的管理工具
两个比较好用的OPCache管理工具,笔者测试了第一个,不过貌似第二个更强大一些,呱呱^_^:
https://github.com/amnuts/opcache-gui
https://github.com/PeeHaa/OpCacheGUI