Redis(设计与实现):---Sentinel之故障转移(SLAVEOF命令)

本文详细介绍了Redis Sentinel系统中的故障转移过程,包括如何选择新的主服务器、修改从服务器复制目标以及将旧主服务器设为从服务器。在故障转移中, Sentinel会挑选状态良好、数据完整的从服务器,通过SLAVEOF no one命令将其提升为主服务器,并调整其他从服务器的复制关系。
摘要由CSDN通过智能技术生成

故障转移:

在选举产生出领头Sentinel之后,领头Sentinel将对已下线的主服务器执行故障转移操作

该操作包含下面3个步骤:
在已下线主服务器属下的所有从服务器里面,挑选出一个从服务 器并将其转换为主服务器
让已下线主服务器属下的所有从服务器改为复制新的主服务器
将已下线主服务器设置为新的主服务器的从服务器,当这个旧的主服务器重新上线 时,它就会成为新的主服务器的从服务器

一、选出新的主服务器

故障转移操作第一步要做的就是在已下线主服务器属下的所有从服务器中,挑选出一个状态良好、数据完整的从服务器,然后向这个从服务器发送SLAVEOF no one命令,将这个从服务器转换为主服务器

新的主服务器是怎样挑选出来的?

领头Sentinel会将已下线主服务器的所有从服务器保存到一个列表里面,然后按照以下规则,一项一项地对列表进行过滤:

①删除列表中所有处于下线或者断线状态的从服务器,这可以保证列表中剩余的从服务器都是正常在线的

②删除列表中所有最近五秒内没有回复过领头Sentinel的INFO命令的从服务器,这 可以保证列表中剩余的从服务器都是最近成功进行过通信的

③删除所有与已下线主服务器连接断开超过down-after-milliseconds*10毫秒的从服务器:down-after-milli

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值