注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

技术行者

时代的车轮在按照摩尔定律滚动。

 
 
 

日志

 
 

PHP的zend opcache使用和配置方法  

2014-06-17 17:37:00|  分类: PHP |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Zend Opcache 是鸟哥写的一个PHP中间字节码opcode缓存拓展,后来被纳入到官方的版本中。PHP在执行执行的过程中,会先去解析PHP代码,生成opcode,然后Zend引擎读取opcode解释并且执行。为了解决每次都重复生成opcode,因此通过这个方案来缓存opcode。

Zend Opcache 是PHP 5.5+ 自带的, 大家知道目前PHP的缓存插件一般有三个:APC、eAccelerator、XCache,但未来它们可能都会消失,因为PHP 5.5已经集成Zend Opcache,功能和前三者相似但有一些不同(例如apc还带了用户内存操作的功能),缓存速度据说比它们更快一些。

这几个PHP加速插件的主要原理都相同,就是把PHP执行后的数据缓冲到内存中从而避免重复的编译过程,能够直接使用缓冲区已编译的代码从而提高速度,降低服务器负载,不过会增加一些内存的消耗。一些PHP框架,代码模块很多,涉及几十个文件,如果每次都重复编译opcode的话,消耗太大。使用之后,效率会明显提升。

Zend Opcache 已经集成在了PHP 5.5+里面,编译安装PHP5.5的时候加上–enable-opcache就行了,这样自动在extension的目录中生成opcache.so。

以下为 安装扩展实例:
但也支持低版本的 PHP 的安装方法:
依次执行下面的命令

wget http://pecl.php.net/get/zendopcache-7.0.4.tgz
tar xzf zendopcache-7.0.4.tgz
cd zendopcache-7.0.4
/usr/local/php/bin/phpize

如果找不到phpize 的话自己找PHP路径,我的在/usr/local/php/bin/phpize,下面这行也要按你的php.ini路径自行修改

/configure –with-php-config=/usr/local/php/bin/php-config

make && make install

假如你的服务器上安装了多个版本php,那么需要告诉phpize要建立基于哪个版本的扩展。通过使用--with-php-config=指定你使用哪个php版本


打开php.ini 在最下面添加如下几行

zend_extension=opcache.so
opcache.memory_consumption=128 //共享内存大小, 这个根据你们的需求可调
opcache.interned_strings_buffer=8 //interned string的内存大小, 也可调
opcache.max_accelerated_files=4000 //最大缓存的文件数目
opcache.revalidate_freq=60 //60s检查一次文件更新
opcache.fast_shutdown=1 //打开快速关闭, 打开这个在PHP Request Shutdown的时候 会收内存的速度会提高
opcache.enable_cli=1
例如我的:
PHP 5.6.3 (cli) (built: Nov 20 2014 11:33:46)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies

  评论这张
 
阅读(526)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017