Redis的高可用之哨兵模式

Redis哨兵主要是解决Redis主从同步时主数据库宕机问题,使其能够自动进行故障恢复,提高Redis系统的高可用性。

1. 哨兵的作用:

监控 :哨兵通过心跳机制监控主库和从库的存活性。
选主 :当主库宕机时,哨兵会选举出一个领导者哨兵来完成主从切换。
通知:哨兵将新主库的地址通知给所有从库和客户端。

2. 监控机制:

a. 哨兵通过配置文件获取主库地址,并定期发送INFO replication命令来获取主从拓扑关系。

b. 哨兵使用pub/sub机制在sentinel:hello频道上发布和订阅消息,以感知其他哨兵的存在。

c. 哨兵每隔1秒向主库、从库和其他哨兵发送PING命令进行探活。
主观下线 :单个哨兵在一定时间内没有收到主库响应时,认为主库主观下线。
客观下线:当半数以上哨兵同意主库主观下线时,认为主库客观下线。

3. 选主过程:

a. 一旦主库被认定为客观下线,哨兵之间会进行选举,选出一个领导者哨兵。

b. 选举过程采用过半投票机制,是基于哨兵之间的通信和共识算法。

4. 故障恢复:

领导者哨兵负责故障恢复,包括选出一个健康的从库提升为新主库,并将其他从库配置为新主库的从库。

5. 从库选择:

选择从库时会过滤掉不健康的节点,然后根据优先级、复制偏移量和runid进行排序,选择最优的从库作为新主库。

相关推荐
风哥2号2 小时前
数据库教程FGMT52‑PostgreSQL用户权限与安全管理
数据库·postgresql
风哥2号8 小时前
数据库教程FGMT27‑MySQL数据库基础知识与体系架构
数据库·mysql
YangYang9YangYan9 小时前
2026 校招商品分析岗位 JD 拆解,核心指标、工具与面试考点
大数据·数据库·数据分析
西安栈上月明软件科技10 小时前
从业务黑话到本体图谱:OAG本体建模五步法(西安老系统AI化改造实战)
数据库·人工智能·架构
anxiao_m10 小时前
跨云跨机房大数据迁移怎么选?不同场景工具适配指南
数据库·云启快传
wdfk_prog10 小时前
ROS教程:01 搭建 ROS1 Noetic Docker 开发环境
运维·缓存·docker·容器·ros
wdfk_prog11 小时前
ros教程02:创建 catkin Workspace、Package 与第一个 ROS1 C++ Node
运维·缓存·docker·容器·ros
夕除12 小时前
redis--015
redis
风哥2号12 小时前
数据库教程FGMT43‑MySQL性能分析与优化调整
数据库·mysql
随身数智备忘录12 小时前
财务数据分析如何与业务场景结合?财务数据分析如何从数出有据到数出有用?
数据库