用Zend OPCache提高PHP的性能

Zend OPCache的前身是Zend Optimizer + (Zend O+),在PHP5.5的发行版本中自带了Zend O+,并重新命名为:Zend OPCache。但是默认是没有启用的,可以在ini文件中enable一下。

据统计,zend opcache比apc性能要好,可以提升提升 5%-9%。

值得关注的是Zend OPCache支持PHP5.2.0+的版本,也就是说只要是5.2以上的PHP,都可以是用Zend OPCache,而不需一定要升级到PHP5.5,所以在我们目前的生产站点可以尝试使用Zend OPCache,如基于Drupal6、Drupal7的PHP5.2,PHP5.3等版本。

Drupal大学上也有关于这个问题的讨论,链接一下:Zend OPCache和APC能共用吗?

安装Zend OPCache,推荐使用自带源或者PECL包的安装方式。

yum install php-pecl-zendopcache.x86_64 -y

启用Zend OPCache, 编辑 /etc/php.d/opcache.ini 文件

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-server

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,Drupal8、PHPUnit等,建议不要禁用。

4. Zend OPCache的管理工具
两个比较好用的OPCache管理工具,笔者测试了第一个,不过貌似第二个更强大一些,呱呱^_^:
https://github.com/amnuts/opcache-gui
https://github.com/PeeHaa/OpCacheGUI



 

本文有效链接: http://www.drupal001.com/2014/09/zend-opcache-php/

时间: 2024-10-07 13:56:43

用Zend OPCache提高PHP的性能的相关文章

使用Zend OpCache 提高 PHP 5.5+ 性能

使用Zend OpCache 提高 PHP 5.5+ 性能 作者:admin | 时间:February 28, 2015 | 分类:Linux | 评论:1 评论 PHP 5.5 以后内建了 OpCache ,我们启用即可 OpCache 的加速原理是把编译后的 bytecode 存储在内存里面, 避免重复编译 PHP 所造成的资源浪费. 虽然内建了, 但是默认没有启用: 军哥lnmp Ubuntu 14.04 nginx1.6.2 mariadb5.5.41 php5.6.5 修改 php.

linux php Zend OpCache 扩展,提高性能

PHP 5.5 以后内建了 OpCache ,我们启用即可 OpCache 的加速原理是把编译后的 bytecode 存储在内存里面, 避免重复编译 PHP 所造成的资源浪费.虽然内建了, 但是默认没有启用: 修改 php.ini 文件 vi /usr/local/php/etc/php.ini 在文件最后面加入:;添加opcache的模块zend_extension=opcache.so ; 开关打开opcache.enable=1 ; 可用内存, 酌情而定, 单位 megabytesopca

开启opcache提高性能

在开启opcache之前,我们先介绍一下编译与解释: 编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快:而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的. 解释型语言的实现中,翻译器并不产生目标机器代码,而是产生易于执行的中间代码,这种中间代码与机器代码是不同的,中间代码的解释是由软件支持的,不能直接使用硬件,软件解释器通常会导致执行效率较低.用解释型语言编写的

编译安装 Zend Opcache 缓存Opcache,加速 PHP

Optimizer+ 是 Zend 开发的闭源但可以免费使用的 PHP 优化加速组件,是第一个也是最快的 opcode 缓存工具.现在,Zend 科技公司将 Optimizer+ 在 PHP License 下开源成为 Zend Opcache. GitHub地址:https://github.com/zendtech/ZendOptimizerPlus Zend OPcache 通过 opcode 缓存和优化提供更快的 PHP 执行过程.它将预编译的脚本文件存储在共享内存中供以后使用,从而避免

Zend OPcache

Zend OPcache Zend OPcache 通过缓存和优化加快PHP的执行速度.通过将预编译的脚本字节码存储在共享内存中提高PHP的性能.减少了之后访问脚本时从磁盘读取并编译脚本的处理.此外,它应用了一些字节码优化模式使脚本执行更快. 兼容性 Zend OPcache 7.02版本兼容  5.2.*. 5.3.*. 5.4.* 和 5.5开发版,将来会不支持PHP 5.2. 快速安装 - 编译 $PHP_DIR/bin/phpize./configure –with-php-config

在PHP5.5.34版本中启用Zend Opcache

大家知道目前PHP的缓存插件一般有三个:APC.eAccelerator.XCache,但未来它们可能都会消失,因为PHP 5.5已经集成Zend Opcache,功能和前三者相似但又有少许不同,缓存速度据说比它们更快(注意:只是据说,我没测试过).这几个PHP加速插件的主要原理都相同,就是把PHP执行后的数据缓冲到内存中从而避免重复的编译过程,能够直接使用缓冲区已编译的代码从而提高速度,降低服务器负载,它们的效率是显而易见的.Zend Opcache在PHP 5.5后的版本中已经集成了,编译安

PHP 缓存插件之 Zend Opcache ( 取代 APC )

简介: Zend Opcache .APC 这都是 PHP 代码加速器,将 PHP 源代码的编译结果缓存起来,再次调用时对比时间标记,如果没有改变则使用缓存数据,免去再次解析代码的开销. APC 止步于 PHP 5.4 ,Zend Opcache 从 PHP 5.5 开始集成,取代 APC . 一.安装 Zend Opcache 1.源码编译 PHP 时,加入 --enable-opcache 即可开启该扩展,之后稍做配置即可 2.手动添加 Zend Opcache 扩展. shell > cd

使用 Zend Opcache 加速 PHP (2)

Optimizer+ 是 Zend 开发的闭源但可以免费使用的 PHP 优化加速组件,是第一个也是最快的 opcode 缓存工具.现在,Zend 科技公司将 Optimizer+ 在 PHP License 下开源成为 Zend Opcache. Zend OPcache 通过 opcode 缓存和优化提供更快的 PHP 执行过程.它将预编译的脚本文件存储在共享内存中供以后使用,从而避免了从磁盘读取代码并进行编译的时间消耗.同时,它还应用了一些代码优化模式,使得代码执行更快. 1. 什么是 op

PHP加速插件 Zend Opcache

大家知道目前PHP的缓存插件一般有三个:APC.eAccelerator.XCache,但未来它们可能都会消失,因为PHP 5.5已经集成Zend Opcache,功能和前三者相似但又有少许不同,缓存速度据说比它们更快(注意:只是据说,我没测试过). 这几个PHP加速插 件的主要原理都相同,就是把PHP执行后的数据缓冲到内存中从而避免重复的编译过程,能够直接使用缓冲区已编译的代码从而提高速度,降低服务器负载,它们 的效率是显而易见的,像drupal这种庞大的CMS,每次打开一个页面要调用数十个P