📚 分类
redis
🕵🏽‍♀️ 问题描述
在redis中提供的集群方案有哪些(主从复制)?
👨‍🏫 问题讲解
❒ redis集群模式有以下三种

✔ 主从复制
✔ 哨兵模式
✔ 分片集群

❒ 单节点redis的并发能力是有上限的,要进一步提高redis的并发能力,就需要搭建主从集群
✔ 实现读写分离一般都是一主多从,主节点负责写数据,从节点负责读数据。

❒ redis主从如何进行数据同步
✔ replication ld:简称replid,是数据集的标记,id一致则说明是同一数据集。每一个master都有唯一的replidslave则会继承master节点的replid
✔ offset:偏移量,随着记录在repl baklog中的数据增多而逐渐增大。slave完成同步时也会记录当前同步的offset.
✔ 如果replid不一致,则需要生成RDB文件,然后发送给从节点,进行数据同步(全量)。
✔ 如果slave的offset小于master的offset,说明slave数据落后于master,需要更新(增量)。
🏳️‍🌈 问题总结
redis主从如何进行数据同步?

❒ 全量同步
1.从节点请求主节点同步数据(replication id、offset )
2.主节点判断是否是第一次请求,是第一次就与从节点同步版本信息(replication id和offset)
3.主节点执行bgsave,生成rdb文件后,发送给从节点去执行
4.在rdb生成执行期间,主节点会以命令的方式记录到缓冲区(一个日志文件)
5.把生成之后的命令日志文件发送给从节点进行同步

❒ 增量同步:
1.从节点请求主节点同步数据,主节点判断不是第一次请求,不是第一次就获取从节点的offset值
2.主节点从命令日志中获取offset值之后的数据,发送给从节点进行数据同步
📖 问题信息
📈 浏览次数:22 | 📅 更新时间:2025-12-03 16:16:50
📦 创建信息
🏷️ ID:14 | 📅 创建时间:2024-09-25 22:20:16