你看懂了吗 说说Redis主从的脑裂行为

前言

大家好,我是田螺。

分享一道大厂面试真题:说说redis主从的脑裂?

咱们可以依照这几个维度来回答:

1. 什么是脑裂

什么是脑裂行为?

2. 主从集群中为什么会出现脑裂?

脑裂行为在Redis主从集群中或许出现的要素,关键包含以下几点:

3. 脑裂为什么又会造成数据失落呢?

Redis的主从切换后,一旦从库被优化为新的主库,哨兵会批示原主库去口头主从复制命令,以便与新主库启动全量同步数据。最后在全量同步的阶段的话,原主库须要肃清本地数据,加载来自新主库的RDB文件(咱们知道,redis主从同步是基于rdb文件的)。这就会造成在主从切换时期,原主库接纳的新写数据会失落啦。

还是上个繁难的图,繁难大家了解吧:

上图,大家可以发现:

4. 咱们该如何防止/应答脑裂的出现呢?

为了防止脑裂的出现,咱们尝试这些方法:

还有个比拟介绍的形式,那就是min-slaves-to-write 和 min-slaves-max-lag 这两个参数,可以有效缩小 Redis 脑裂的危险

您可能还会对下面的文章感兴趣: