简介
OPcache 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是 省去了每次加载和解析 PHP 脚本的开销。
PHP 5.5.0 及后续版本中已经绑定了 OPcache 扩展。 对于 PHP 5.2,5.3 和 5.4 版本可以使用 » PECL 扩展中的 OPcache 库。
没开启前:
PHP的正常执行流程如下
开启后:
启用Opcode缓存之后的流程图如下所示:
开启opcache方法
PHP 5.5+版本以上的,可以使用PHP自带的opcache开启性能加速(默认是关闭的),PHP5.5之后opcache可以直接--enable-opcache
。
1. 打开php.ini文件
2. 找到:[opcache]
,设置为:
[opcache]
; 开关打开
opcache.enable=1
; 设置共享内存大小, 单位为:Mb
opcache.memory_consumption=128
;如果启用,那么 OPcache 会每隔 opcache.revalidate_freq 设定的秒数 检查脚本是否更新。
opcache.validate_timestamps=60
#提示:在opcache使用软连接的情况下,会存在opcache没有被清除的情况.可以使用重启fastcgi来解决这个问题.
3. 添加opcache.so
在php.ini最后一行添加opcache.so
主要作用是用来引用opcache
注意:php.ini 是否在etc 目录下,还是根据自己安装的路径有关的
[root@abcdocker ~]# tail /etc/php.ini
zend_extension="opcache.so"
4. 重启Nginx和php
5. 测试
配置完成后,可以使用如下代码查询opcache:
建立 phpinfo.php
<?php
phpinfo();
在浏览器运行这个文件
结果:
证明这样就能开启成功了