Zend Opcache在PHP5.4、PHP5.5下的安装

3,740次阅读
没有评论

Zend Opcache 在 PHP5.4、PHP5.5 下的安装

Zend OPcache 通过缓存和优化加快 PHP 的执行速度。通过将预编译的脚本字节码存储在共享内存中提高 PHP 的性能。减少了之后访问脚本时从磁盘读取并编译脚本的处理。此外,它应用了一些字节码优化模式使脚本执行更快。

PHP 5.5 安装 Zend Opcache

./configure --enable-opcache

编译成功了,但是没有效果,可能是由于我编译增加了 xcache、memcache 的原因,后来本地测试了下,全新 PHP 5.5 直接用 –enable-opcache 是可以的。

PHP 5.4 安装 Zend Opcache

wget http://pecl.php.net/get/zendopcache-7.0.3.tgz
tar xzf zendopcache-7.0.3.tgz
cd zendopcache-7.0.3
/usr/local/vesta/php/bin/phpize
./configure -with-php-config=/usr/local/vesta/php/bin/php-config
make
make install

我在 Debian7.5 下安装的 Vestacp 会提示找不到 autoconf:

Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.

需要安装下 Autoconf

apt-get install autoconf

打开 php.ini 在最下面添加如下代码:

zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20100525/opcache.so  //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

Dibian 下在 /etc/php5/mods-available 下创建 opcache.ini 添加如下代码(我使用的 Vestacp 免费 VPS 主机控制面板):

; configuration for php Zend OPcache module
; priority=20
zend_extension=/usr/local/vesta/php/lib/php/extensions/no-debug-non-zts-20100525/opcache.so
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1

使用 ln - s 创建软链接到 /etc/php5/conf.d/

ln -s ../mods-available/opcache.ini /etc/php5/conf.d/20-opcache.ini

然后重启 apache,用 phpinfo 查看是否生效!

Zend Opcache 是否生效

可以通过 phpinfo 查看是否生效,下图是我的配置 PHP 扩展:

Zend Opcache 在 PHP5.4、PHP5.5 下的安装

我们做个测试, 验证一下什么是 opcache.

echo‘hellow opcache’;

这是一段非常简单的 php 代码, 请保存为 a.php 文件然后访问, 随意刷新, Cache hits 数值会不停地增加, 说明起作用了,
然后你修改代码为:

echo‘hellow opcache new’;

再刷新 a.php, 应该可以看到效果, 打印出来的值仍然是 hellow opcache, 即源码被缓存了, 它不再解析 a.php 文件, 试着不停地刷新, 检测多少秒后才会输出 hellow opcache new.

 
也可以安装个 Opcache Control Panel 查看!
下载地址:https://gist.github.com/ck-on/4959032
百度网盘下载:http://pan.baidu.com/s/1qWNpryO
把上面的代码上传到你的网站目录下面。
打开就可以看到界面如下:
Zend Opcache 在 PHP5.4、PHP5.5 下的安装

正文完
 
VPSWe
版权声明:本站原创文章,由 VPSWe 2014-12-20发表,共计2066字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)