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 相关文章推荐
对盗链说再见...
Oct 09 PHP
一个数据采集类
Feb 14 PHP
Ajax PHP 边学边练 之三 数据库
Nov 26 PHP
ThinkPHP与PHPExcel冲突解决方法
Aug 08 PHP
php获取客户端电脑屏幕参数的方法
Jan 09 PHP
PHP读取汉字的点阵数据
Jun 22 PHP
PHP微信红包API接口
Dec 05 PHP
php中10个不同等级压缩优化图片操作示例
Nov 14 PHP
PHP进程通信基础之信号
Feb 19 PHP
PHP输出多个元素的排列或组合的方法
Mar 14 PHP
php/JS实现的生成随机密码(验证码)功能示例
Jun 06 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
Dec 01 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
php Smarty模板生成html文档的方法
2010/04/12 PHP
PHP连接SQLServer2005 的问题解决方法
2010/07/19 PHP
使用PHPMyAdmin修复论坛数据库的图文方法
2012/01/09 PHP
PHP抓取、分析国内视频网站的视频信息工具类
2014/04/02 PHP
深入解析PHP的Yii框架中的event事件机制
2016/03/17 PHP
php文件上传后端处理小技巧
2016/05/22 PHP
通过源码解析Laravel的依赖注入
2018/01/22 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
MooTools 1.2介绍
2009/09/14 Javascript
基于Jquery的文字滚动跑马灯插件(一个页面多个滚动区)
2010/07/26 Javascript
类似天猫商品详情随浏览器移动的示例代码
2014/02/27 Javascript
Extjs 4.x 得到form CheckBox 复选框的值
2014/05/04 Javascript
setTimeout()递归调用不加引号出错的解决方法
2014/09/05 Javascript
JS实现的数组全排列输出算法
2015/03/19 Javascript
JS实现支持Ajax验证的表单插件
2016/03/24 Javascript
js 将图片连接转换成base64格式的简单实例
2016/08/10 Javascript
浅析 NodeJs 的几种文件路径
2017/06/07 NodeJs
JavaScript事件冒泡与事件捕获实例分析
2018/08/01 Javascript
基于webpack4+vue-cli3项目实现换肤功能
2019/07/17 Javascript
js实现点击按钮随机生成背景颜色
2020/09/05 Javascript
JavaScript日期库date-fn.js使用方法解析
2020/09/09 Javascript
JavaScript仿京东轮播图效果
2021/02/25 Javascript
在python plt图表中文字大小调节的方法
2019/07/08 Python
浅谈python多线程和多线程变量共享问题介绍
2020/04/17 Python
python 操作mysql数据中fetchone()和fetchall()方式
2020/05/15 Python
举例详解CSS3中的Transition
2015/07/15 HTML / CSS
HTML5中form如何关闭自动完成功能的方法
2018/07/02 HTML / CSS
西雅图的买手店:Totokaelo
2019/10/19 全球购物
中间件分为哪几类
2012/03/14 面试题
村党支部群众路线教育实践活动对照检查材料
2014/09/26 职场文书
停电调休通知
2015/04/16 职场文书
小学体育队列队形教学反思
2016/02/16 职场文书
Nginx反向代理多个服务器的实现方法
2021/03/31 Servers
mysql的MVCC多版本并发控制的实现
2021/04/14 MySQL
实战 快速定位MySQL的慢SQL
2022/03/22 MySQL
利用Python实现模拟登录知乎
2022/05/25 Python