3.哨兵模式
3.1 哨兵简介
3.1.1 哨兵概念
首先我们来看一个业务场景:如果redis的master宕机了,此时应该怎么办?
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BM6hSAKa-1616686033486)(./img/16.png)]
那此时我们可能需要从一堆的slave中重新选举出一个新的master,那这个操作过程是什么样的呢?这里面会有什么问题出现呢?
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LGtbeNSi-1616686033496)(./img/17.png)]
要实现这些功能,我们就需要redis的哨兵,那哨兵是什么呢?
哨兵
哨兵(sentinel) 是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的master并将所有slave连接到新的master。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-asTpCTze-1616686033503)(./img/18.png)]
3.1.2 哨兵作用
哨兵的作用:
-
监控:监控master和slave
不断的检查master和slave是否正常运行
master存活检测、master与slave运行情况检测
-
通知(提醒):当被监控的服务器出现问题