page contents

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

Opcache 的前生是 Optimizer+ ,它是 Zend 开发的 PHP 优化加速组件。

attachments-2020-04-ulFZgITV5eaa3c4a69e7b.jpg

简介


Opcache 的前生是 Optimizer+ ,它是 Zend 开发的 PHP 优化加速组件。

Optimizer+ 将 PHP 代码预编译生成的脚本文件 Opcode 缓存在共享内存中供以后反复使用,从而避免了从磁盘读取代码再次编译的时间消耗。

同时,它还应用了一些代码优化模式,使得代码执行更快。

从而加速 PHP 的执行。


正常的执行流程如下:

attachments-2020-04-Feao9vfv5eaa6bd224dd1.png

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

attachments-2020-04-ugQoajMZ5eaa6bd8cd467.png

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)



attachments-2020-04-GR51IKpT5eaa3c2ab6782.jpg

  • 发表于 2020-04-30 10:47
  • 阅读 ( 473 )
  • 分类:PHP开发

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
Pack
Pack

1135 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1478 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章