微信号:phpdaily

介绍:PHP在线专注于PHP编程语言学习,PHP开发经验分享,工作问题解决以及PHP在线技能测评等多功能为一体的服务系统,希望给工作学习中的PHPER带来些帮助。

PHP7性能加速-开启Opcache

2018-07-30 23:57 PHP在线

微信公众号:PHP在线

PHP属于解释型语言,在执行代码过程中,翻译器并不产生目标机器代码,而是产生易于执行的中间代码,这种中间代码每执行一次就翻译一次,通常会导致执行效率较低,而在PHP7中可以直接开启Opcache来进行性能优化和加速。

PHP 5.5+版本以上的,可以使用PHP自带的opcache开启性能加速(默认是关闭的),PHP5.5之后opcache可以直接--enable-opcache。对于PHP 5.5以下版本的,可以使用APC来进行缓存。现在我们来看如何开启Opcache。

1.打开php.ini文件
找到php的安装路径下的配置文件,如果你不知道位置可以使用php -i命令来找到php.ini文件的位置。

# php -i | grep php.ini
Configuration File (php.ini) Path => /usr/local/php/etc
Loaded Configuration File => /usr/local/php/etc/php.ini

这样就找到php的配置文件了:/usr/local/php/etc/php.ini

2.配置Opcache
使用vim打开php.ini文件,找到[opcache],设置如下:

[opcache]
; 开关打开
opcache.enable=1
; 设置共享内存大小, 单位为:Mb
opcache.memory_consumption=128
;如果启用,那么 OPcache 会每隔 opcache.revalidate_freq 设定的秒数 检查脚本是否更新。 如果禁用此选项,你必须使用 opcache_reset() 或者 opcache_invalidate() 函数来手动重置 OPcache,也可以 通过重启 Web 服务器来使文件系统更改生效。
opcache.validate_timestamps=60

然后找到zend_extension="opcache.so"这行,把前面的分号去掉,如果没有这行,请在文件末尾添加。

3.重启php-fpm服务
重启php-fpm,让配置生效。

# /etc/init.d/php-fpm restart

使用php -m查看Opcache是否生效。

# php -m
[PHP Modules]
....
[Zend Modules]
Zend OPcache

或者在phpinfo上查看。


 
PHP在线 更多文章 GitHub 的 MySQL 高可用性实践分享 浅谈API的设计及其安全性 PHP数组使用之道(干货) PHP的16种错误机制总结 网站高并发解决方案(理论知识)
猜您喜欢 全球运维大会心得 机器之心GMIS 2017参会者必读:如何玩转全球机器智能峰会(倒计时5天!) 干货丨技术概述深度学习:详解前馈、卷积和循环神经网络 还有比"宝宝离婚"与"里约奥运"更重要的事情 应届生如何准备软件测试工程师应聘