opache配置

引言:

我是来练习表达能力的,有看不懂的可以留言

前段时间我们老大高兴的告诉我们几个,接口的响应时间减少了很多,说是开启了opache,看了下日志,的确提升了挺多,但是他在纠结怎么配置,于是就诞生了这个问题:”到底opcache什么是最佳配置呢?“,查阅了百度,全是讲解参数的,感觉没什么用,已经写了几十字废话了,不BB了,直接贴配置吧(开发环境不要开启opcache)

opcache.enable=1                                            //开启 (开发环境别开启)              

opcache.revalidate_freq=0                                

opcache.validate_timestamps=0                       //手动重启

opcache.max_accelerated_files=7963           

opcache.memory_consumption=192                // 默认比较小,根据项目配置

opcache.interned_strings_buffer=16               

opcache.fast_shutdown=1         



参数解释:

opcache.validate_timestamps = 0  设为0,表示需要手动更新opcache,设为1,则根据参数opcache.revalidate_freq的设置去自动更新

opcache.revalidate_freq = 0 opcache自动检测文件是否更新的周期,单位秒。如果是0,则每次请求时opcache都要进行检测。当validate_timestamps为0时,指令无效。

opcache.max_accelerated_files=7963   最大缓存文件数目,根据项目配置

opcache.memory_consumption=192      为opcache分配多少共享内存,单位M,根据项目配置

opcache.interned_strings_buffer=16      用来存储临时字符串的内存大小,以兆字节为单位

opcache.fast_shutdown = 1       打开快速关闭, 打开这个在PHP Request Shutdown的时候回收内存的速度会提高


看完上面的配置大多数人都会产生一个问题,我代码更新了,我怎么手动更新opcache, 又到我BB的时间了,下面讲解一些方法:


笨方法:重启php-fpm

框架:

laravel框架本身是带有指令的:可以执行:php artisan opcache:clear


其余方法:

opcache_reset和opcache_invalidate函数可以清理,可以写接口或者脚本调用,接口别公开

你可能感兴趣的:(opache配置)