念念不忘
必有回响🎉

给WordPress启用Redis Object Cache插件

为了提升网站速度,降低MySQL的负载,通常都需要将数据缓存到内存中,常用的就是memcached、redis,但是相对来说Redis更符合需求,而且也更通用。于是就选择了Redis,而WordPress常用的redis缓存插件就是Redis Object Cache了,直接搜索名称安装即可。

Redis Object Cache插件默认会连接localhost:6379的redis,并且database为0。但是目前我的网站是由两台服务器支撑,所以打算再折腾折腾。单机版的Redis自然足矣支撑了,但是另一台机器闲置着岂不浪费了,于是就考虑使用Reids主从、哨兵、集群。其中最简单的就是主从了。

1.搭建Redis主从结构

10.99.0.1 master
10.00.0.2 slave-01

上面的内容就是Redis的主从角色。安装redis很简单,可参考我以前安装redis5的方法。直接从配置开始:

master配置:

bind 10.99.0.1 ::1
bind 10.99.0.1
# 关闭保护模式,因为需要配置密码
protected-mode no
# 端口号
port 6379 
# 守护进程
daemonize yes
databases 16
loglevel notice
logfile /usr/local/redis/var/redis.log
slave-serve-stale-data yes  
slave-read-only yes
# 配置redis认证
requirepass yourpassword

 

启动Master节点的redis。测试认证

redis-cli -h 10.99.0.1 -a yourpassword

info

部署Slave节点的redis

将master节点的redis.conf拷贝到slave的服务器上(10.99.0.2)。新增如下配置:

# 配置Master的ip与端口
slaveof 10.99.0.1 6379
# 配置master密码
masterauth yourpassword
# 其余配置与master保持一致,只需要修改bind即可
bind 10.99.0.2

启动slave节点的redis,测试认证:

redis-cli -h 10.99.0.2 -a yourpassword

info

测试在master几点设置一个key,然后在slave节点查看,并修改,如果能够看到master设置的key,并且无法修改,则表示搭建成功。

接着修改wp-config.php,让redis object cache支持主从模式的redis。

在wp-config.php中新增如下配置:

// redis
define('WP_REDIS_HOST',['10.99.0.1','10.99.0.2']);
define('WP_REDIS_SERVERS', [
    'tcp://10.99.0.1:6379?database=6&alias=master',
    'tcp://10.99.0.2:6379?database=6&alias=slave-01',
]);
define('WP_REDIS_PASSWORD','yourpassword');
define('WP_REDIS_DATABASE','6');

这里需要注意WP_REDIS_SERVERS的alias的两个名词必须是master和slave-01这种形式,我修改成Master和Slave-01会发现Redis Obejct Cache无法连接。

开启Redis Object Cache后,如下图所示:

登录任意一个redis,切换数据库到6,查看是否有内容:

redis-cli -h 10.99.0.1 -a yourpassword
select 6
keys *

如果有内容,则表示Redis已经生效。

关于哨兵、集群等模式的配置,请参考官方文档:https://cn.wordpress.org/plugins/redis-cache/

赞(1) 打赏
未经允许不得转载:Charles's Blog » 给WordPress启用Redis Object Cache插件

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏