Redis的主从结构可以采用一主多从或者级联结构,Redis主从复制可以根据是否是全量分为全量同步和增量同步。
- 一个master可以有多个slave
- 一个slave只能有一个master
- 数据流是单向的,master到slave
两种实现方式:
- 命令 slaveof
- 配置 slaveof ip port,slave-read-only yes
全量复制
全量复制的开销
- bgsave的时间
- RDB文件网络的传输时间
- 从节点清空旧数据的时间
- 从节点加载RDB的时间
- 可能的AOF的时间
部分复制
主从复制的缺点: Redis 的主从复制模式,一旦主节点出现故障无法提供服务,需要人工介入手工将从节点调整为主节点,同时应用端还需要修改新的主节点地址,这种故障转移的方式对于很多应用场景是不能容忍的。正式由于这个问题,Redis 提供了 Sentinel(哨兵) 架构来解决这个问题