redis-Sentinel哨兵机制

文章目录

Sentinel

Sentinel本质是一个运行在特殊模式下的Redis服务器,它可以实现主从库自动切换,并且在挂掉的主库恢复之后,让其自动成为新主库的从库。防止系统中同时存在两个主库的脑裂现象。

哨兵主要负责的就是三个任务:监控、选主、通知
主库真的挂了吗?——监控
该选择哪个从库作为主库?——选主
怎么把新主库的相关信息通知给从库和客户端呢?——通知

  • 监控
    Sentinel以每秒一次的频率向实例(包括主服务器、从服务器、其他Sentinel)发送PING命令,并根据实例对PING命令的回复来判断实例是否在线,当Sentinel将某个实例判断为主观下线后。 它会向同样监视这个主服务器的其他Sentinel进行询问,看它们是否同意这个主服务器进入主观下线状态。当Sentinel收集到足够多的主观下线投票之后,它会将主服务器判断为客观下线,并发起一次针对主服务器的故障转移操作。即选主

  • 选主
    主库挂了以后,哨兵就需要从很多个从库里,按照一定的规则选择一个从库实例,把它作为新的主库。具体步骤如下:
    第一步:选举领头Sentinel
    第二步: 挑选出一个状态良好、 数据完整的从服务器换为主服务器。
    第三步:修改从服务器的复制目标
    第四步:将已下线的主服务器设置为新的主服务器的从服务器

  • 通知
    在执行通知任务时,哨兵会把新主库的连接信息通知给其他从库,让它们和新主库建立连接,并进行数据复制。 当所有从服务器都开始复制新的主服务器时, 故障转移操作执行完毕。
    同时,哨兵会把新主库的连接信息通知给客户端,让它们把写请求发到新主库上。
    另外, Sentinel 还会继续监视已下线的旧主库,并在它重新上线时, 将它设置为新的主服务器的从服务器。防止脑裂

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值