本文主要是介绍Sentinel检查Redis客观下线状态,以及后续的操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
建议先关注、点赞、收藏后再阅读。
Sentinel会通过以下步骤检查Redis的客观下线状态:
- Sentinel会定期(默认每10秒)向所有被监控的Redis实例发送PING命令,并通过接收到的PONG响应来确认Redis实例是否在线。
- 如果在指定的时间内(默认30秒)没有接收到Redis实例的PONG响应,Sentinel会将该Redis实例标记为
主观下线
,意味着该Redis实例可能已经宕机或网络不可用。
- 当Sentinel监测到Redis实例被标记为主观下线之后,它会开始执行
客观下线
检查。
- 客观下线检查是通过Sentinel互相交流来进行的。每个Sentinel都会定期询问其他Sentinel关于Redis实例状态的信息,比如是否已被标记为主观下线。
- 如果大多数Sentinel都认为该Redis实例处于主观下线状态(最少需要Quorum个数,Quorum的默认值为2),则该Redis实例将被标记为客观下线。
- 一旦Redis实例被标记为客观下线,Sentinel会触发
故障转移
操作,以从当前Redis实例的从属中选举一个新的主节点,并将其他从属重新配置为新的主节点的从属。
以下是Sentinel在发现Redis客观下线时会执行的操作的顺序:
- Sentinel将Redis实例标记为主观下线。
- Sentinel开始执行客观下线检查,并与其他Sentinel交流验证该Redis实例的状态。
- 如果大多数Sentinel认为该Redis实例处于主观下线状态,Sentinel将Redis实例标记为客观下线。
- Sentinel触发故障转移操作,在当前Redis实例的从属中选举一个新的主节点。
- Sentinel将其他从属重新配置为新的主节点的从属。
以上是Sentinel检查Redis客观下线状态并在发现客观下线时执行的操作。
这篇关于Sentinel检查Redis客观下线状态,以及后续的操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!