上文讲解了单节点redis的安装部署与配置,为了提升redis服务的性能,可以使用主从模式从而实现读写分离:主节点负责写,从节点读。
主从模式的搭建
机器清单:
节点 | 角色 | 主机名 | ip |
节点1 | 主节点 | node1 | 192.168.70.129 |
节点2 | 从节点 | node2 | 192.168.70.133 |
主节点不需要进行额外的配置,启动主节点并使用客户端进行连接,执行命令info replication,可以看到主从节点相关信息:
从节点的配置文件redis.conf,需要配置slaveof项为192.168.70.129 6379
启动从节点redis服务,然后再看主节点的info replication,发现已经有从节点上线了
查看从节点的info replication
从节点只能读取数据而不能写入数据,从节点可以读取数据和写入数据
主从模式的结构
- 一主一从结构:当主节点的写入操作较多而且需要持久化时,可以关闭主节点的AOF,仅在从节点开启AOF,这样可以避免持久化对主节点性能的影响
- 一主多从结构:当读取操作较多时,可以增加从节点的个数来分担读取的压力,但是这样主节点同步到从节点的次数也会增加,从而影响了主节点的性能与稳定性
- 树形结构:针对一主多从的结构的一种优化,主节点后面跟一个从节点,该从节点后面再跟多个从节点,从而主节点只需要同步数据到一个从节点即可,保证了主节点的稳定性与性能水平
主从结构缺点
- 主从复制结构,只有主节点支持写入,写入能力有限
- 不支持高可用,当主节点宕机,服务将会失效,需要人工重新修改配置主节点