Redis Sentinel原理

网友投稿 1131 2022-10-06

Redis Sentinel原理

Redis Sentinel原理

首先, 哨兵模式是一种特殊的模式,它是 Redis 高可用的一种实现方案。首先哨兵是一个独立的进程, 可以实现对 Redis 实例的监控、通知、自动故障转移。

实际上,每个哨兵节点每秒通过 ping 去进行心跳监测(包括所有 redis 实例和 sentinel 同伴),并根据回复判断节点是否在线。

如果某个 sentinel 线程发现主库没有在给定时间( ​​down-after-milliseconds​​​)内响应这个 ​​PING​​​,则这个 ​​sentinel​​​ 线程认为主库是不可用的,这种情况叫 “主观失效”(即SDOWN);这种情况一般不会引起马上的故障自动转移,但是当多个 ​​sentinel​​​ 线程确实发现主库是不可用并超过 ​​sentinel.conf​​​ 里面的配置项 ​​sentinel monitor mymaster {#ip} {#port} {#number}​​​ 中的 ​​#number​​​ 时候(这里实际上采用了流言协议),一般其余 ​​sentinel​​​ 线程会通过 RAFT 算法推举领导的 sentinel 线程负责主库的客观下线并同时负责故障自动转移,这种情况叫 “客观失效”(即 ​​ODOWN​​)。

具体流程如下图所示:

哨兵模式的配置项

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot整合EasyExcel实现导入导出数据
下一篇:Redis集群-哨兵模式原理(Sentinel)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~