码迷,mamicode.com
首页 > 其他好文 > 详细

redis集群脑裂以及解决方案

时间:2020-05-15 20:15:18      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:redis集群   方案   恢复   版本   出现   max   同步   ast   第一个   

   关于reids集群会由于网络等原因出现脑裂的情况,所谓的集群脑裂就是,由于redis master节点和redis salve节点和sentinel处于不同的网络分区,使得sentinel没有能够心跳感知到master,所以通过选举的方式提升了一个salve为master,这样就存在了两个master,就像大脑分裂了一样,这样会导致客户端还在old master那里写入数据,新节点无法同步数据,当网络恢复后,sentinel会将old master降为salve,这时再从新master同步数据,这会导致大量数据丢失。

   解决方案:

    redis中有两个配置参数:

    (旧版本)

      min-slaves-to-write 3

      min-slaves-max-lag 10

    (新版本)

      min-replicas-to-write 3

      min-replicas-max-lag 10

  第一个参数表示最少的salve节点为3个,第二个参数表示数据复制和同步的延迟不能超过10秒

    配置了这两个参数:如果发生脑裂:原master会在客户端写入操作的时候拒绝请求。这样可以避免大量数据丢失。

redis集群脑裂以及解决方案

标签:redis集群   方案   恢复   版本   出现   max   同步   ast   第一个   

原文地址:https://www.cnblogs.com/ysd139856/p/12896600.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!