PHP如何开启Opcache功能提升程序处理效率
简介
Opcache 的前生是 Optimizer+ ,它是 Zend 开发的 PHP 优化加速组件。Optimizer+ 将 PHP 代码预编译生成的脚本文件 Opcode 缓存在共享内存中供以后反复使用,从而避免了从磁盘读取代码再次编译的时间消耗。同时,它还应用了一些代码优化模式,使得代码执行更快。从而加速 PHP 的执行。
正常的执行流程如下:
开启 Opcache 后的执行流程如下:
Yum 安装
php -v
yum list *opcache*
yum -y install rh-php71-php-opcache.x86_64kill -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)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Opcache导致php-fpm崩溃nginx返回502
我这个博客为了提高运行效率在vps上装了opcache扩展,结果发现有个页面返回502,其他页面正常. 检查了php-fpm日志,发现是php-fpm子进程不知道为什么会崩溃,然后把opcache关了就正常.中间折腾的过程就不提了,总之最后发现应该是和另外一个扩展 zend guard冲突导致的,搞笑的是,只要我把php.ini中[zend guard] 配置段放在[zend opcache]后面就正常了. 不想继续深究了,如果你对php底层熟悉,可以为我解惑.
-
PHP 的Opcache加速的使用方法
本文介绍了PHP 的Opcache加速的使用方法,具体如下,分享给大家: 介绍 PHP 5.5+版本以上的,可以使用PHP自带的opcache开启性能加速(默认是关闭的).对于PHP 5.5以下版本的,需要使用APC加速 Opcache是一种通过将解析的PHP脚本预编译的字节码存放在共享内存中来避免每次加载和解析PHP脚本的开销,解析器可以直接从共享内存读取已经缓存的字节码,从而大大提高PHP的执行效率. 配置 在PHP 5.5.0及后续版本中,PHP已经将Opcache功能以拓展库形式内嵌在发
-
启用OPCache提高PHP程序性能的方法
说明 PHP 5.5+版本以上的,可以使用PHP自带的opcache开启性能加速(默认是关闭的).对于PHP 5.5以下版本的,需要使用APC加速,这里不说明,可以自行上网搜索PHP APC加速的方法. opcache是Zend Optimizer编译到php环境中的名字,意思即优化缓存.Zend OPcache 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是省去了每次加载和解析 PHP 脚本的开销. 这个PHP加速插件的主要原理就是把PH
-
PHP配置ZendOpcache插件加速
php原版本情况: [root@www sbin]# php -v PHP 5.6.23 (cli) (built: Dec 7 2018 09:00:11) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies 1.修改php.ini,在最后填写如下代码: [root@www php]# tail php.ini [opcache] zend_ext
-
PHP Opcache安装和配置方法介绍
本文针对PHP5.5等高级版本,编译时需要加上--enable-opcache参数 编译安装完成后,我们开始配置Opcache 复制代码 代码如下: [Opcache] zend_extension = opcache.so opcache.enable=1 opcache.memory_consumption = 64 opcache.interned_strings_buffer = 8 opcache.max_accelerated_files = 4000 opcache.revalid
-
PHP开启opcache提升代码性能
配置指令如下: [opcache] zend_extension=opcache.so opcache.enable_cli=1 ;共享内存大小, 这个根据你们的需求可调 opcache.memory_consumption=256 ;interned string的内存大小, 也可调 opcache.interned_strings_buffer=8 ;最大缓存的文件数目 opcache.max_accelerated_files=4000 ;60s检查一次文件更新 opcache.reval
-
php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法实例分析
本文实例讲述了php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法.分享给大家供大家参考,具体如下: 一.opcache opcache 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是 省去了每次加载和解析 PHP 脚本的开销. PHP 5.5.0 及后续版本中已经绑定了 opcache 扩展. 对于 PHP 5.2,5.3 和 5.4 版本可以使用PECL扩展中的 opcache 库. window
-
PHP如何开启Opcache功能提升程序处理效率
简介 Opcache 的前生是 Optimizer+ ,它是 Zend 开发的 PHP 优化加速组件.Optimizer+ 将 PHP 代码预编译生成的脚本文件 Opcode 缓存在共享内存中供以后反复使用,从而避免了从磁盘读取代码再次编译的时间消耗.同时,它还应用了一些代码优化模式,使得代码执行更快.从而加速 PHP 的执行. 正常的执行流程如下: 开启 Opcache 后的执行流程如下: Yum 安装 php -v yum list *opcache* yum -y install rh-p
-
详解PHP7开启OPcache和Swoole性能的提升对比
前期准备 测试所用的主机为虚拟机,虚拟机配置在双核4GB的个人电脑中.虚拟机系统为linux,http服务器采用nginx,用lnmp脚本安装nginx.mysql.php.Laravel框架为7.X版本. 配置站点,在nginx的server块中配置虚拟主机 server{ listen 80; root "/vagrant/www/laravel7/public"; server_name test.laravel.com; index index.html index.php;
-
利用SpringDataJPA开启审计功能,自动保存操作人操作时间
目录 1 相关注解 实现自动记录上述信息主要有5个注解 2 实现过程 2.1 依赖引用 2.2 实体类标记审计属性 2.3 审计自定义操作 2.4 应用开启审计功能 2.5 实体操作 有些业务数据对数据的创建.最后更新时间以及创建.最后操作人进行记录.如果使用Spring Data Jpa做数据新增或更新,可实现自动保存这些信息而不需要显示设置对应字段的值,可通过以下步骤进行配置. 1 相关注解 实现自动记录上述信息主要有5个注解 @EnableJpaAuditing:审计功能开关 @Creat
-
详解Android开启OTG功能/USB Host API功能
目录 Android USB 模式简介设备模式 主机模式 配件模式 Android主机模式的开启 Android USB Host API功能的确认和开启 Android USB 模式简介设备模式 当计算机或其他USB主机需要连接安卓设备时,此时安卓设备是作为“USB设备”角色的,在计算机上显示为 USB 外设.现在的安卓设备已经被赋予了愈加丰富的功能,如MTP相机模式.文件传输模式(类似于U盘).RNDIS网卡模式等.当使用普通手机数据线连接安卓手机和电脑就可以使用这些功能. 主机模式 And
-
Django xadmin开启搜索功能的实现
应用目录下adminx.py class EmailVerifyRecordAdmin(object): search_fields = ['code','email','send_type'] 过滤器搜索 class EmailVerifyRecordAdmin(object): list_filter = ['code','email','send_type','send_time'] 以上这篇Django xadmin开启搜索功能的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,
-
Android Camera2开启自动曝光功能
本文实例为大家分享了Android Camera2开启自动曝光功能的具体代码,供大家参考,具体内容如下 首先,打开3A的总开关: CaptureRequest.Builder builder.set(CaptureRequest.CONTROL_MODE, CameraMetadata.CONTROL_MODE_AUTO); 获取支持的 AE FPS Range: List<int[]> ae_fps_ranges = new ArrayList<>(); for (Range&l
-
教你用Type Hint提高Python程序开发效率
简介 Type Hint(或者叫做PEP-484)提供了一种针对Python程序的类型标注标准. 为什么使用Type Hint?对于动态语言而言,常常出现的情况是当你写了一段代码后,隔段时间你可能忘记这个方法的原型是什么样子的了,你也不清楚具体应该传入什么类型的参数,这样往往需要你去阅读代码才能定义每个类型具体是什么.或者当你使用一个文档并不是特别完全的第三方库,你不知道这个库应该如何使用,这都会很痛苦. 现在,借助Type Hint,你可以实现: 1.实现类型检查,防止运行时出现的类型不符合情
-
提升java开发效率工具lombok使用争议
目录 引言 什么是 lombok 如何使用 lombok 的原理和滥用 引言 对使用 lombok 还是有很多争议的,有些公司不建议使用,有些公司又大量使用. 我们的想法是:可以使用,但是不要滥用. 什么是 lombok Lombok是 一种Java™实用工具,可用来帮助开发人员消除Java的冗长代码,尤其是对于简单的Java对象(POJO) . 它通过注释实现这一目的. 通过在开发环境中实现Lombok,开发人员可以节省构建诸如hashCode() 和 equals()这样的方法以及以往用来分
随机推荐
- JavaScript字符串检索字符的方法
- prototype 源码中文说明之 prototype.js
- js四舍五入数学函数round使用实例
- SSH框架的常见问题和解决方法
- asp.net使用LINQ to SQL连接数据库及SQL操作语句用法分析
- PHP实现Socket服务器的代码
- AJax 学习笔记一(XMLHTTPRequest对象)
- 详解JavaScript编程中正则表达式的使用
- go语言日志记录库简单使用方法实例分析
- MySQL WorkBench管理操作MySQL教程
- c#和Javascript操作同一json对象的实现代码
- Python合并多个装饰器小技巧
- MSsql每天自动备份数据库并每天自动清除log的脚本
- 在SQL中获取一个长字符串中某个字符串出现次数的实现方法
- C#实现操作MySql数据层类MysqlHelper实例
- C# Socket的TCP通讯的实例代码
- nginx中配置pathinfo模式示例
- Javascript对象属性方法汇总
- python调用cmd命令行制作刷博器
- Maven配置文件pom.xml详解