Opcache通过将解析后的PHP脚本的预编译字节码存储在共享内存中,避免了每次加载和解析PHP脚本的开销。解析器可以直接从共享内存中读取缓存的字节码,从而大大提高了PHP的执行效率。
本篇介绍如何使用PHP的Opcache加速,如下所示,并与大家分享

PHP安装扩展

宝塔面板 直接在 PHP设置 》 安装扩展 》opcache 安装即可

自行编译用户参考PHP安装opcaache


php.ini 配置

[opcache]
 
# 启动缓存器
opcache.enable=1
 
#针对CLI版本PHP启动缓存器
opcache.enable_cli=1
 
# 共享内存大小,单位为MB
opcache.memory_consumption=128
 
#存储临时字符串缓存大小,单位为MB,PHP5.3.0以前会忽略此项配置
opcache.interned_strings_buffer=8
 
#缓存文件数最大限制,命中率不到100%,可以试着提高这个值
opcache.max_accelerated_files=4000
 
#一定时间内检查文件的修改时间, 这里设置检查的时间周期, 默认为 2, 单位为秒
opcache.revalidate_freq=60
 
#开启快速停止一次释放全部请求变量的内存
opcache.fast_shutdown=1
 
#启用检查 PHP 脚本存在性和可读性的功能
opcache.enable_file_override=1

Opcache注意事项

使用Opcache不需要使用apc和Xcache来加速;

  • 因为PHP 5.5.0和后续版本嵌入了对Opcache的支持,所以PHP意识到了它的重要性。
  • 与Xcache等第三方PHP优化器相比,使用Opcache是一个更好的选择。

不建议在开发过程中打开Opcache

  • 打开Opcache后,临时修改的php内容将不会实时显示,并立即生效。因为它受到Opcache的影响。
  • 之前不知道,修改了php要等一段时间刷新才刷的出来,opcache.revalidate_freq=60 这个参数。