谈一谈redis脑裂

什么是redis脑裂

(1)一主多从架构中,主节点与客户端通信正常,主节点与哨兵、从节点连接异常,客户端仍正常写入数据

(2)哨兵判定主节点下线,重新选主

(3)原主节点与哨兵和其他节点通信恢复,成为新主节点的从节点,drop本身所有的数据,从新主节点全量copy数据

(4)原主节点通信异常至新主节点出现期间客户端写入的数据丢失

这就是脑裂

如何应对脑裂现象

在原主节点通信异常至新主节点选举出现期间,拒绝客户端的数据写入

redis提供了两个配置项

  • min-slaves-to-write:与主节点通信的从节点数量必须大于等于该值主节点,否则主节点拒绝写入
  • min-slaves-max-lag:主节点与从节点通信的ACK消息延迟必须小于该值,否则主节点拒绝写入。
    Redis脑裂可以采用min-slaves-to-write和min-slaves-max-lag合理配置尽量规避,但无法彻底解决
相关推荐
難釋懷6 小时前
OpenResty实现Redis查询
数据库·redis·openresty
刘~浪地球6 小时前
Redis 从入门到精通(五):哈希操作详解
数据库·redis·哈希算法
lifewange10 小时前
Redis的测试要点和测试方法
数据库·redis·缓存
刘~浪地球11 小时前
Redis 从入门到精通(六):列表操作详解
数据库·chrome·redis
better_liang11 小时前
每日Java面试场景题知识点之-Redisson核心价值与优化点详解
java·redis·分布式锁·redisson·微服务架构·分布式系统·缓存优化
qqacj15 小时前
Redis设置密码
数据库·redis·缓存
于樱花森上飞舞16 小时前
【Redis】Redis的数据结构
数据结构·数据库·redis
喜闻乐见天16 小时前
redis+keepalived实现双机热备
redis
__土块__17 小时前
一次会员积分系统改造复盘:从本地缓存到多级缓存的架构演进
redis·性能优化·系统架构·caffeine·多级缓存·缓存一致性·本地缓存
yhole18 小时前
redis连接服务
数据库·redis·bootstrap