使用Zend OpCache 提高 PHP 5.5+ 性能
PHP 5.5 以后内建了 OpCache
,我们启用即可 OpCache
的加速原理是把编译后的 bytecode
存储在内存里面, 避免重复编译 PHP 所造成的资源浪费.
虽然内建了, 但是默认没有启用:
军哥lnmp
Ubuntu 14.04 nginx1.6.2 mariadb5.5.41 php5.6.5
修改 php.ini 文件
sudo vim /usr/local/php/etc//php.ini
在文件最后面加入:
;添加opcache的模块
zend_extension=opcache.so
; 开关打开
opcache.enable=1
; 可用内存, 酌情而定, 单位 megabytes
opcache.memory_consumption=256
; 对多缓存文件限制, 命中率不到 100% 的话, 可以试着提高这个值
opcache.max_accelerated_files=5000
; Opcache 会在一定时间内去检查文件的修改时间, 这里设置检查的时间周期, 默认为 2, 定位为秒
opcache.revalidate_freq=240
重启服务器
sudo service php-fpm restart
sudo service nginx restart
APC VS OpCache
APC 是将要被遗弃的项目, PHP 5.5 都不支持, 而在 PHP 5.5 和 5.6 版本, OpCache 是默认内建的, 并且支持 5.2 到 5.4 的安装.
查看效果
- 拥有漂亮的图形化界面的项目 : https://github.com/PeeHaa/OpCacheGUI
- 单文件, 方便部署的项目: https://github.com/rlerdorf/opcache-status