Redis
- 分类
- 网络协议
- 难度
- 未设置
- 来源数
- 1
- 更新时间
- 2026/03/29 00:57
答案
假如主从之间的TCP连接断开了, 当连接恢复时 ,从服务器会发送一个psync请求给主服务器,带上offset,主 服务器再断开连接之后,会将写操作记录在一个环形缓冲区当中,然后根据从服务器发过来的offset,判断从服务器要读取的数据是否还在缓冲区当中, 如果在的话,就会采用增量同步的方式,将repl backlog buffer里面的操作写到replication buffer中,发送给从服务器来执行。 如果不在的话,就会执行全量复制的方式,让从服务器再复制一次。
相关题目(5)
什么是热点 key,如何处理?共源 1
分布式系统Redis
watch dog 机制是什么?共源 1
分布式系统并发锁Redis
Redis 如何实现分布式锁?共源 1
分布式系统锁Redis
分布式系统并发Redis
元信息
审核状态: active
关联来源: 1
来源面经题(0)
这道题目前没有手动沉淀的面经题来源。
来源(1)
Java八股(数据库).md
knowledge_noteQuestion 119: 介绍一下增量复制?如果主从的 TCP 连接断开了会怎么样?
Source answer: 假如主从之间的TCP连接断开了, 当连接恢复时 ,从服务器会发送一个psync请求给主服务器,带上offset,主 服务器再断开连接之后,会将写操作记录在一个环形缓冲区当中,然后根据从服务器发过来的offset,判断从服务器要读取的数据是否还在缓冲区当中, 如果在的话,就会采用增量同步的方式,将repl backlog buffer里面的操作写到replication buffer中,发送给从服务器来执行。 如果不在的话,就会执行全量复制的方式,让从服务器再复制一次。
Reviewed answer: 连接恢复后,从节点会携带 offset 发起 psync。主节点根据 repl backlog buffer 判断缺失数据是否仍在缓冲区内;若在,则进行增量同步,否则退化为全量复制。