使用Redis和opcache为网站加速教程[速度起飞]

相信建站的朋友都十分关心网站速度问题了,如果大家是搭建自己的博客或者一些知识分享类的网站,目前主流的Wordpress主题都已经做了很多优化措施,配上一台不特别拉胯的服务器,网站整体的性能一般都是满足日常使用的,但是当你的网站有很多用户访问或者有很多图片等,那么用户访问网站的速度可能就会受一些影响,我们还是要做一些系统级的优化,一言(yi.tips)这里和大家分享下如何使用Redis和opcache为网站加速教程,这里不卖关子的说,你做了这两步优化后,你的网站就会原地起飞。

WordPress网站加速介绍

为了方便大家理解网站加速的原理,这里是还是简单的说一个网站打开的流程:

  1. 用户访问你的wordpress搭建的网站;
  2. wordpress使用PHP为后端服务,由PHP读取数据库获取用户访问的内容;
  3. PHP进行html内容渲染;
  4. Html内容传入用户的浏览器,浏览器加载并展示网站内容;

这里可以看到,整个流程主要分四步,网站的速度也就是看这四步速度的加总,其中第二步和第三步的速度主要是在服务器内的操作,可以称为后台渲染速度,第四步主要是浏览器的加载速度,可以称为前端网页加载速度

后台渲染速度主要由PHP负责,由php查询数据库,生成html内容再返回给浏览器;
前台网页加载速度 主要取决于用户与服务器之间的网速以及请求的内容大小;

WordPress网站优化措施

前端优化措施

那么这里我们先说前台加载速度,这一部分最简单易懂,简单的说就是网速快不快,内容大不大。所以我们可以才用的优化方式主要有以下两种:

  • 前台优化:使用CDN加速
  • 前台优化:图片使用OSS/COS等第三方储存

这两种前端优化方式相对比较简单,很多小伙伴都比较了解,这里一言(yi.tips)就不介绍了,如果有小伙伴不清楚,可以留言,后面有时间的话,会再写一篇文章进行详细的介绍,这里主要讲一下如何进行后端优化。

后端优化措施

首先分享一下我的建议以及可以后端优化速度的有效措施

  • 后台优化:不建议使用全静态缓存,会导致很多交互功能不能用
  • 后台优化:推荐使用Redis或Memcached缓存功能,不会有任何负面影响
  • 后台优化:推荐使用opcache进行PHP加速优化

这里主要针对第二个和第三个进行详细的配置分享,你做了这两步优化后,你的网站就会原地起飞。

Redis缓存教程

php在执行函数最消耗时间的就是查询SQL数据库了,一般来讲一个页面的数据库查询大概在120到260次左右,使用Redis或者Memcached缓存,原理就是将php查询过的数据库缓存下来,下一次相同内容就不再查询数据库了,直接从缓存获取,极大的提高php执行效率。

WordPress官方采用 Object Cache对象缓存,同时主题的也遵循此机制,配合Redis或者Memcached缓存,能将数据库查询降低80%,有效的提高了渲染速度!
Redis和Memcached原理是一样的,我们只需要二选一安装使用即可,优化加速的效果也差不多。我就以宝塔环境安装 Redis为例,进行详细的图文教程。

教程一共分为三步:

  1. 安装PHP的 Redis 扩展
  2. 宝塔安装 Redis 程序
  3. wordpress安装 Redis 缓存插件并开启
安装PHP:Redis扩展

进入宝塔,选择到我们目前在使用的PHP程序(推荐使用PHP7.4),进入安装扩展找到Redis并安装:

7K4OfQZ59v1MwFl

等待安装完成之后,记得重启一下php服务:

yGLp8g1DNVBIikK

安装Redis程序

进入宝塔的软件商店,搜索 Redis ,然后安装即可,安装完成之后无需做任何设置。

zf1gvy2CRDkYEuK

安装WP插件

最后一步就是在Wordpress安装 Redis 缓存插件了,支持 Redis 缓存 的插件有很多,我这里以 Redis Object Cache 这款插件为例进行安装

  1. 直接在插件中心搜索 Redis Object Cache ,安装即可
  2. 启用插件
  3. 开启缓存

Fb6BiDNrWphUyvM

这个功能十分简单,不要觉得是英文插件有会影响使用,开启之后看到如下界面就说明成功了。如果没有开启成功,请按照上面的步骤检测php扩展和Redis程序是否安装成功

TcFz7seXkPl4WRQ

Opcache加速教程

根据PHP的执行逻辑,每一个php函数在执行的时候php会先把此函数进行编译解析。Opcache是PHP官方公司开发的一款PHP优化加速扩展,它的原理把PHP函数编译解析后的内容进行缓存,从而提高PHP的执行速度!根据测试,能有效的提高2到5倍左右的执行效率。

安装Opcache就十分简单了,直接安装 Opcache 扩展,再重启PHP服务即可!

ihkFXtR2KD4lo8m

使用宝塔安装 Opcache 之后会自动配置好扩展参数,如需适当修改,进入配置文件,搜索;opcache,即可看到配置参数:

r14nTdNgSwspPuB

对应的配置解释:

opcache.enable=1 (default "1")
;OPcache打开/关闭开关
opcache.memory_consumption=128 (default "64")
;OPcache共享内存存储大小。用于存储预编译的opcode(以MB为单位)。
opcache.interned_strings_buffer=8 (default "4")
;OPcache字符串驻留大小,(以MB为单位)
opcache.max_accelerated_files=80000 (default "2000")
;OPcache控制内存中最多可以缓存多少个PHP文件,建议设置大一点,大于你的项目中的所有PHP文件的总和
opcache.revalidate_freq=3 (default "2")
;OPcache设置缓存的过期时间(单位是秒);几秒内内容不会刷新,如果需要实时更新可以设置为 0
opcache.fast_shutdown=1(default  “0”)
;OPcache更快速清理内存的机制,实际效果视环境而异

到这里,如果你按照一言(yi.tips)的教程完成了redis和opcache的配置,这里你可以在访问一下你的网站,速度一定会超越你的预期,奥利给~
如果你觉得文章对你有帮助,欢迎大家收藏及转发,更多小Tips都在一言(Yi.Tips)~

重要提醒

  1. 如果您的服务器有多个网站,并且又要使用Redis,如果你没有给多个网站设置不同的数据库前缀(wordpress在一台服务器下由于每个网站都是使用默认的数据库前缀wp_),那么数据会乱窜!!! 多个网站的小伙伴一定要做如下配置的优化,我特意写了一篇文章,不配置的话,数据会乱窜,你访问你的A网站,展示的内容或许是B网站的。
一台服务器下多个网站,数据混乱问题-Yi.Tips
  1. 主题更新或者更新重要内容请记得刷新缓存!
  2. 使用缓存之后,部分不太重要的数据就不会实时更新,主题会自动判断!这种不重要的内容无需关注
  3. 适当优化,如果未优化就能低于500毫秒那就不建议再做优化了
© 版权声明
THE END
一点Tips,知识免费共享网站
点赞15 分享
写点什么吧! 共1条

请登录后发表评论