PHP 5.5 以后内建了OpCache
,OpCache
的加速原理是把编译后的bytecode
存储在内存里面, 避免重复编译 PHP 所造成的资源浪费.
虽然内建了, 但是默认没有启用, 下面是开启的布置, 以这套环境为例子:
PHP 5.5 Ubuntu 14.04 Nginx PHP-FPM
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 是将要被遗弃的项目, PHP 5.5 都不支持, 而在 PHP 5.5 和 5.6 版本, OpCache 是默认内建的, 并且支持 5.2 到 5.4 的安装.
下图是 PHPHub 开启了 OpCache 后的效果 (New Relic监控后台截屏 ) :
开启后的 PHP 平均响应时间不到 60ms, 之前是 120 ~ 130ms
大家有没有觉得访问的时候快了一点点呢. :smile: