使用 OpCache 之后提升 PHP 5.5+ 程序性能

zisu 98

说明

php 5.5 以后内建了 OpCache , OpCache 的加速原理是把编译后的 bytecode 存储在内存里面,避免重复编译 php 所造成的资源浪费.

如何启用

虽然内建了,但是默认没有启用,下面是开启的布置,以这套环境为例子:

PHP 5.5
Ubuntu 14.04
Nginx
PHP-FPM

修改 php.ini 文件

sudo vim /etc/php5/fpm/php.ini

在文件最后面加入:

; 开关打开
opcache.enable=1

; 可用内存, 酌情而定, 单位 megabytes
opcache.memory_consumption=256

; 对多缓存文件限制, 命中率不到 100% 的话, 可以试着提高这个值
opcache.max_accelerated_files=5000

; Opcache 会在一定时间内去检查文件的修改时间, 这里设置检查的时间周期, 默认为 2, 定位为秒
opcache.revalidate_freq=240

重启服务器

sudo service php5-fpm restart
sudo service nginx restart

APC VS OpCache

APC 是将要被遗弃的项目,php 5.5 都不支持,而在 php 5.5 和 5.6 版本,OpCache 是默认内建的,并且支持 5.2 到 5.4 的安装.

如何查看效果

效果图 使用 OpCache 之后提升 PHP 5.5+ 程序性能

下图是 phpHub 开启了 OpCache 后的效果 ( New Relic 监控后台截屏 ) :

使用 OpCache 之后提升 PHP 5.5+ 程序性能

开启后的 php 平均响应时间不到 60ms, 之前是 120 ~ 130ms

使用 OpCache 之后提升 PHP 5.5+ 程序性能

大家有没有觉得访问的时候快了一点点呢. #[滑稽]

分享
微信
微博
QQ