欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-03-25 17:01:50
简介 Opcache 的前生是 ,它是 Zend 开发的 PHP 优化加速组件。Optimizer+ 将 PHP 代码预编译生成的脚本文件 缓存在共享内存*以后反复使用,从而避免了从磁盘读取代码再次编译的时间消耗。同时,它还应用了一些代码优化模式,使得代码执行更快。从而加速 PHP 的执行。 正常 ......

简介

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)