PHP如何开启Opcache功能提升程序处理效率


Posted in PHP onApril 27, 2020

简介

Opcache 的前生是 Optimizer+ ,它是 Zend 开发的 PHP 优化加速组件。Optimizer+ 将 PHP 代码预编译生成的脚本文件 Opcode 缓存在共享内存中供以后反复使用,从而避免了从磁盘读取代码再次编译的时间消耗。同时,它还应用了一些代码优化模式,使得代码执行更快。从而加速 PHP 的执行。

正常的执行流程如下:

PHP如何开启Opcache功能提升程序处理效率

开启 Opcache 后的执行流程如下:

PHP如何开启Opcache功能提升程序处理效率

Yum 安装

php -v
yum list *opcache*
yum -y install rh-php71-php-opcache.x86_64

kill -USR2 cat `/usr/local/php/var/run/php-fpm.pid`
nginx -s reload

配置

zend_extension=opcache.so
[opcache]
;开启opcache功能
opcache.enable=1

;CLI环境下,开启opcache功能
opcache.enable_cli=1

;OPcache共享内存的大小,单位MB
opcache.memory_consumption=128

;字符串在进程间驻留科使用的内存大小,单位MB
opcache.interned_strings_buffer=8

;内存中可以缓存的文件量。200-1000000之间
;可以使用“find . -type f -print | grep php | wc -l”统计文件数
opcache.max_accelerated_files=4000

;缓存的过期时间,单位秒
opcache.revalidate_freq=60

;开启快速响应机制来调用代码中的析构器,PHP 7.2.0 开始移除
opcache.fast_shutdown=1

;开启文件更新检查,到达 revalidate_freq 时间之后会检查文件变更并更新缓存,设为0则永不检查
opcache.validate_timestamps=1

;开启缓存二进制导出文件到外部文件,位置为传入的值
opcache.file_cache=/tmp

查看是否安装成功

php -m

<?php phpinfo(); ?>

常用函数

// 重置所有的opcache缓存。FPM模式下生成的缓存,在CLI下不能RESET。
var_dump(opcache_reset()); //bool(true)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
centos 5.6 升级php到5.3的方法
May 14 PHP
PHP array_multisort()函数的使用札记
Jul 03 PHP
php入门学习知识点五 关于php数组的几个基本操作
Jul 14 PHP
php实现telnet功能示例
Apr 08 PHP
php计算2个日期的差值函数分享
Feb 02 PHP
php继承中方法重载(覆盖)的应用场合
Feb 09 PHP
typecho插件编写教程(六):调用接口
May 28 PHP
PHP微信红包API接口
Dec 05 PHP
php mailer类调用远程SMTP服务器发送邮件实现方法
Mar 04 PHP
PHP未登录自动跳转到登录页面
Dec 21 PHP
Laravel框架Eloquent ORM删除数据操作示例
Dec 03 PHP
浅谈如何提高PHP代码质量之单元测试
May 28 PHP
Thinkphp 框架基础之入口文件功能、定义与用法分析
Apr 27 #PHP
Thinkphp 框架基础之源码获取、环境要求与目录结构分析
Apr 27 #PHP
Thinkphp 框架扩展之驱动扩展实例分析
Apr 27 #PHP
Thinkphp 框架扩展之应用模式实现方法分析
Apr 27 #PHP
php让json_encode不自动转义斜杠“/”的方法
Apr 27 #PHP
PHP Pipeline 实现中间件的示例代码
Apr 26 #PHP
PHP设计模式入门之状态模式原理与实现方法分析
Apr 26 #PHP
You might like
GD输出汉字的函数的分析
2006/10/09 PHP
打造计数器DIY三步曲(上)
2006/10/09 PHP
PHP开发入门教程之面向对象
2006/12/05 PHP
PHP关联链接常用代码
2012/11/05 PHP
php setcookie函数的参数说明及其用法
2014/04/20 PHP
PHP中使用GD库创建圆形饼图的例子
2014/11/19 PHP
PHP的Socket网络编程入门指引
2015/08/11 PHP
PHP文件上传之多文件上传的实现思路
2016/01/27 PHP
js创建子窗口并且回传值示例代码
2013/07/02 Javascript
jQuery截取指定长度字符串代码
2014/08/21 Javascript
jQuery实现仿美橙互联两级导航菜单的方法
2015/03/09 Javascript
JavaScript中的toLocaleLowerCase()方法使用详解
2015/06/06 Javascript
jQuery实现Flash效果上下翻动的中英文导航菜单代码
2015/09/22 Javascript
JavaScript表单验证实例之验证表单项是否为空
2016/01/10 Javascript
基于AngularJS+HTML+Groovy实现登录功能
2016/02/17 Javascript
jQuery qrcode生成二维码的方法
2016/04/03 Javascript
Angularjs的$http异步删除数据详解及实例
2017/07/27 Javascript
JS实现为动态添加的元素增加事件功能示例【基于事件委托】
2018/03/21 Javascript
Angular4.0动画操作实例详解
2019/05/10 Javascript
基于vue实现一个禅道主页拖拽效果
2019/05/27 Javascript
JS通过ajax + 多列布局 + 自动加载实现瀑布流效果
2019/05/30 Javascript
详解vue微信网页授权最终解决方案
2019/06/16 Javascript
http请求 request失败自动重新尝试代码示例
2018/01/25 Python
详解Python3注释知识点
2019/02/19 Python
python实现两张图片的像素融合
2019/02/23 Python
python通过移动端访问查看电脑界面
2020/01/06 Python
世界顶级足球门票网站:Live Football Tickets
2017/10/14 全球购物
英语系毕业生自荐信
2013/10/31 职场文书
金属材料工程毕业生个人的自我评价
2013/11/28 职场文书
土地转让协议书
2014/09/27 职场文书
农村党员学习党的群众路线教育实践活动心得体会
2014/11/04 职场文书
搬迁通知
2015/04/20 职场文书
环保建议书作文400字
2015/09/14 职场文书
简短的36句中秋节祝福信息语句
2019/09/09 职场文书
Python连续赋值需要注意的一些问题
2021/06/03 Python
Nginx内网单机反向代理的实现
2021/11/07 Servers