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 相关文章推荐
vBulletin Forum 2.3.xx SQL Injection
Oct 09 PHP
PHP文本操作类
Nov 25 PHP
php完全过滤HTML,JS,CSS等标签
Jan 16 PHP
PHP 抓取新浪读书频道的小说并生成txt电子书的代码
Dec 18 PHP
解析用PHP读写音频文件信息的详解(支持WMA和MP3)
May 10 PHP
php curl的深入解析
Jun 02 PHP
2个Codeigniter文件批量上传控制器写法例子
Jul 25 PHP
php求数组全排列,元素所有组合的方法
May 05 PHP
php投票系统之增加与删除投票(管理员篇)
Jul 01 PHP
PHP小偷程序的设计与实现方法详解
Oct 15 PHP
PHP实现的最大正向匹配算法示例
Dec 19 PHP
PHP实现单文件、多个单文件、多文件上传函数的封装示例
Sep 02 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
mysql下创建字段并设置主键的php代码
2010/05/16 PHP
Mysql数据库操作类( 1127版,提供源码下载 )
2010/12/02 PHP
PHP+Memcache实现wordpress访问总数统计(非插件)
2014/07/04 PHP
BOOM vs RR BO5 第四场 2.14
2021/03/10 DOTA
JavaScript获得选中文本内容的方法
2008/12/02 Javascript
javascript验证只能输入数字和一个小数点示例
2013/10/21 Javascript
js弹出确认是否删除对话框
2014/03/27 Javascript
javascript在当前窗口关闭前检测窗口是否关闭
2014/09/29 Javascript
解决ueditor jquery javascript 取值问题
2014/12/30 Javascript
js中获取时间new Date()的全面介绍
2016/06/20 Javascript
浅谈Cookie的生命周期问题
2016/08/02 Javascript
PHP 实现一种多文件上传的方法
2017/09/20 Javascript
js最简单的双向绑定实例讲解
2018/01/02 Javascript
详解为Bootstrap Modal添加拖拽的方法
2018/01/05 Javascript
vue项目中api接口管理总结
2018/04/20 Javascript
实用Javascript调试技巧分享(小结)
2019/06/18 Javascript
layui树形菜单动态遍历的例子
2019/09/23 Javascript
[03:40]DOTA2亚洲邀请赛小组赛第二日 赛事回顾
2015/01/31 DOTA
[02:39]我与DAC之Newbee.Moogy:从论坛到TI
2018/03/26 DOTA
Python实现比较两个文件夹中代码变化的方法
2015/07/10 Python
对python使用telnet实现弱密码登录的方法详解
2019/01/26 Python
对python判断是否回文数的实例详解
2019/02/08 Python
python根据用户需求输入想爬取的内容及页数爬取图片方法详解
2020/08/03 Python
Python安装第三方库攻略(pip和Anaconda)
2020/10/15 Python
详解CSS3原生支持div铺满浏览器的方法
2018/08/30 HTML / CSS
CSS3解析抖音LOGO制作的方法步骤
2019/04/11 HTML / CSS
使用HTML和CSS实现的标签云效果(附demo)
2021/02/03 HTML / CSS
美国女孩洋娃娃店:American Girl
2017/10/24 全球购物
TheFork葡萄牙:欧洲领先的在线餐厅预订平台
2019/05/27 全球购物
生产部岗位职责范文
2014/02/07 职场文书
企业安全生产责任书
2014/04/14 职场文书
劳资协议书范本
2014/04/23 职场文书
关于美容院的活动方案
2014/08/14 职场文书
领导干部群众路线个人对照检查材料思想汇报
2014/09/30 职场文书
Python实现位图分割的效果
2021/11/20 Python
Redis实现主从复制方式(Master&Slave)
2022/06/21 Redis