专栏首页魏艾斯博客www.vpsss.netlnmp 开启 Opcache 脚本缓存提高 php 性能

lnmp 开启 Opcache 脚本缓存提高 php 性能

lnmp 开启 Opcache 脚本缓存可以提高 php 运行性能,进而提高整体服务器的运行效率。Opcache 是 Zend 开发的闭源但可以免费使用的 PHP 优化加速组件。今天魏艾斯博客尝试开启这个组件,并希望能够提高 php 性能,因为是第一次尝试,后面经过一段时间服务器运行后再来汇报结果。

为了提高 linux 服务器的运行速度和网站的打开速度,魏艾斯博客前期进行了各种尝试,从各种 wordpress 缓存插件开始折腾,后来发现各种 wordpress 缓存插件在博客流量低(1000IP)的时候,没啥实际意义,反倒会增加服务器负载,于是卸载之。

现在老魏又来折腾 Opcache(脚本缓存)了,这货是 php 自带(php5.5 以后)的加速组件,官方认证且经常更新,所以想要服务器速度飞起来就一定要启用。

一、启用 OPcache 脚本

进入 lnmp 解压后的目录(搞清楚你自己的 lnmp 版本)

cd  /root/lnmp1.4

执行:

./addons.sh install opcache

此脚本是用来安装 opcache 的,LNMP 1.4 下安装的 PHP 5.5 或更高版本的 PHP 不需要额外安装 OPcache,默认已经安装上但未启用,要执行上面的命令进行开启。

二、配置 Opcache

1、要打开 php.ini 文件,有两种方法,一个是在 SSH 软件中直接编辑,命令如下:

vi /usr/local/php/etc/php.ini

2、 php.ini 文件内容较多,第二种方法是是用 winscp 下载到本地电脑, 再用 dreamweaver 编辑。在文件最后添加如下代码:

[Zend Opcache] opcache.enable=1                 ;Zend Opcache 的开关,关闭时代码不再优化. opcache.enable_cli=1            ;确定是否为 php 的 cli 版本启用 opcache.force_restart_timeout=3600   ;从缓存不被访问后,等待多久后(单位为秒)调度重启 opcache.memory_consumption=128   ;可用内存,单位:Mb,推荐 128 opcache.interned_strings_buffer=8     ;Zend Opcache 暂存池中字符串占内存总量.(单位:MB),推荐为 8 opcache.max_accelerated_files=4000  ;可以缓存多少个脚本,命中率低的可以试着提高这个值 opcache.fast_shutdown=1       ;打开快速关闭,打开这个在 PHP Request Shutdown 时回收内存的速度会提高,推荐 1

以上是老魏的设置。也带上了注释。如果你还有更优化的设置请在下面跟进留言,咱们一起讨论让服务器速度飞起的方法。

三、重启 PHP

最后还要运行重启 php 命令:

service php-fpm restart

在 phpinfo 里面能看到 Zend OPcache 开启了。

这里面最重要的参数是 cache hits,代表缓存命中率;下面的 cache misses 代表为缓存未命中率

四、卸载 Opcache 组件

卸载命令:

./addons.sh uninstall opcache

五、双剑合璧

使用脚本缓存 Opcache 再配合以前说过的 memcached 组件(内容缓存),对网站打开速度有想当程度的提升。

本文在阿里云服务器(点我领取千元代金券当钱花)和腾讯云服务器(点我五折优惠)上测试通过。

memcached 相关文章:

lnmp1.4 环境安装 memcached 和 object-cache.php 过程记录及内存缓存加速效果

MemcacheD 缓存是否启用成功及命中率检查

Memcached 只允许本地访问 11211 端口 解决未授权漏洞

多种方法实时监测 Memcached 命中率

内容缓存和脚本缓存有很多程序可以实现,目前老魏认为同时启用本文提到的这两个就可以了,对于流量低(几千 IP/天)的服务器这样做是比较合适的,你有更好的组合方式请留言告知。

总结:lnmp 中默认已经安装了 Opcache 组件,我们要做的是启用并在 php.ini 中配置一下参数,马上就能体验到性能提升 20%以上的感觉。相关参数设置老魏只是自己总结了一些,不一定是最优化的,有遗漏的地方请大家不吝赐教,我们共同研究进步。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • lnmp 开启 Opcache 脚本缓存提高 php 性能

    lnmp 开启 Opcache 脚本缓存可以提高 php 运行性能,进而提高整体服务器的运行效率。Opcache 是 Zend 开发的闭源但可以免费使用的 PH...

    魏艾斯博客www.vpsss.net
  • 腾讯云服务器如何判断是否要升级配置?

    腾讯云服务器是很多人在使用的国内云服务器,占据了国内云服务器市场相当的份额。其稳定性和快速访问速度都有目共睹。经过一段时间的使用之后,我们的业务已经有了一定的访...

    魏艾斯博客www.vpsss.net
  • 腾讯云标准型S2详细配置及如何选择?

    腾讯云标准型 S2 服务器是腾讯云目前主力推荐机型,采用英特尔®至强® Broadwell 处理器,搭配 DDR4 内存。标准型 S2 实例是较新一代的标准型实...

    魏艾斯博客www.vpsss.net
  • lnmp 开启 Opcache 脚本缓存提高 php 性能

    lnmp 开启 Opcache 脚本缓存可以提高 php 运行性能,进而提高整体服务器的运行效率。Opcache 是 Zend 开发的闭源但可以免费使用的 PH...

    魏艾斯博客www.vpsss.net
  • CNN模型之ShuffleNet

    作者:叶 虎 编辑:李文臣 引言 1 ShuffleNet是旷视科技最近提出的一种计算高效的CNN模型,其和MobileNet和SqueezeNet等一样...

    机器学习算法工程师
  • 腾讯代表中国主导制定区块链发票国际标准

    公布一个重磅消息?↓ 近日,腾讯和中国信通院、深圳税务局联合代表中国在 ITU-T SG16 Q22 会议上首次提出《General Framework o...

    腾讯大讲堂
  • python爬虫入门(一)urllib和urllib2

    爬虫简介  什么是爬虫? 爬虫:就是抓取网页数据的程序。 HTTP和HTTPS HTTP协议(HyperText Transfer Protocol,超文本传输...

    zhang_derek
  • [解读REST] 2.REST用来干什么的?

    衔接上文[解读REST] 1.REST的起源,介绍了REST的诞生背景。每当笔者遇到一个新事物的想去了解的时候,总是会问上自己第一个问题,这个新事物是干什么用的...

    blackheart
  • 【AI版纸牌屋】特朗普团队操纵大数据+AI左右竞选引舆论哗然

    【新智元导读】一家名叫Cambridge Analytica的数据分析公司成了这两天新闻的焦点,他们使用大数据和AI分析Facebook用户资料,操纵舆论帮助特...

    新智元
  • Laravel5.6博客中文章标签增删改查

    该命令会在 app 目录下创建模型文件 Tag.php,由于我们在 make:model 命令中使用了 --migration 选项,所以同时会创建 Tag 模...

    写PHP的老王

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动