php性能优化--opcache
2024-08-24 08:38:11
一、OPcache是什么?
OPcache通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是 省去了每次加载和解析 PHP 脚本的开销。
PHP 5.5.0 及后续版本中已经绑定了 OPcache 扩展。 对于 PHP 5.2,5.3 和 5.4 版本可以使用 PECL扩展中的 OPcache 库。
二、OPcache如何安装?
我的php版本:5.6.32 (cli)
因为在5.5版本后php会内置opcache,我在编译安装的时候也安装了此项,因此只需要打开此功能和配置参数即可。
OPcache 只能编译为共享扩展。 如果你使用 --disable-all 参数 禁用了默认扩展的构建, 那么必须使用 --enable-opcache 选项来开启 OPcache。
编译之后,就可以使用 zend_extension 指令来将 OPcache 扩展加载到 PHP 中。在非 Windows 平台使用zend_extension=/full/path/to/opcache.so, Windows 平台使用 zend_extension=C:\path\to\php_opcache.dll。
vi php.ini (可在php.ini底部添加)
;add opcache
zend_extension= opcache.so #加载opcache模块
opcach.enable_cli=1 #开启opcachecli功能
opcache.memory_consumption=128 #设置的共享缓存空间,我这里设置的128Mb 单位:Mb
opcache.max_accelerated_files=4000 #最大缓存的文件数目
opcache.revalidate_freq=60 #定期检查文件的修改时间,我这设置为60s 单位 秒
opcache.fast_shutdown=1 #打开快速关闭,打开此项php request Shutdown的时候速度会提高
编辑完后重启php-fpm ,使php.ini配置生效
三、检查OPcache是否生效
查看phpinfo输出信息是否已经加载成功。
[root@localhost# php -m |grep 'Zend OPcache'
Zend OPcache
Zend OPcache
[root@localhost]#
四、优化效果
通过监控发现,load负载有明显下降,业务一切正常~
最新文章
- 如何在IntelliJ IDEA删除Project
- 从csv文件导数据到MySQL
- json 输出中文乱码解决办法
- jQuery Mobile_事件
- oracle 高版本导出低版本数据库并且导入到低版本数据的方法
- 中介模式和学习日记Effective C++
- Openjudge-NOI题库-Pell数列
- Java 文件句柄泄露问题解决小记
- Hibernate与Jpa的关系(2)
- Django项目实践4 - Django站点管理(后台管理员)
- vim删除.swp
- Python爬虫与数据分析之进阶教程:文件操作、lambda表达式、递归、yield生成器
- 利用MATLAB截取一张复杂图片中想要的区域
- 【WP8】同步执行异步代码
- 把mongodb服务添加到系统服务中,报错:[sc] openscmanager 失败 5
- 【JAVA】Exception in thread ";main"; java.lang.NoClassDefFoundError
- Python开发【前端】:Ajax(二)
- Python爬虫(八)
- python网络编程,通过服务名称和会话类型(tcp,udp)获取端口号,简单的异常处理
- 【题解搬运】PAT_A1020 树的遍历