MST

星途 面试题库

面试题:Redis部分重同步中可能导致数据丢失的常见原因有哪些

在Redis部分重同步过程里,阐述可能引发数据丢失的常见因素有哪些,并简单说明其原理。
31.4万 热度难度
数据库Redis

知识考点

AI 面试

面试题答案

一键面试

网络中断

  1. 原理:在部分重同步时,网络中断可能导致从节点无法完整接收主节点补发的增量数据。例如,在网络不稳定环境下,数据包丢失或延迟严重,从节点未能及时收到主节点发送的部分增量数据,当网络恢复后,从节点可能已错过该部分数据的接收时机,从而导致数据丢失。

主节点故障

  1. 原理:若主节点在补发增量数据期间发生故障,可能无法完成对从节点的部分重同步操作。比如主节点硬件故障突然宕机,此时从节点无法获取剩余的增量数据,使得从节点数据与主节点数据不一致,造成数据丢失。

复制积压缓冲区溢出

  1. 原理:Redis主节点使用复制积压缓冲区来保存最近传播的写命令。如果部分重同步时间间隔过长,或者主节点写入操作过于频繁,导致复制积压缓冲区溢出,新的写命令覆盖旧的写命令。当从节点请求部分重同步时,主节点可能无法提供从节点所需的全部增量数据,因为部分数据已被覆盖,进而引发数据丢失。