💡
原文中文,约1300字,阅读约需3分钟。
📝
内容提要
Redis 哨兵机制通过监控主库状态,确保高可用性。当主库宕机时,哨兵会选举新的主库并通知从库和客户端,以保持服务持续运行。
🎯
关键要点
- Redis 哨兵机制通过监控主库状态确保高可用性。
- 当主库宕机时,哨兵会选举新的主库并通知从库和客户端。
- 哨兵通过 PING 命令监控主从库的网络连接。
- 只有多数哨兵认为主库下线,才会进行主从切换。
- 新主库的选择基于从库的状态、网络状态和优先级等条件。
- 哨兵通过 pub/sub 机制与其他哨兵互相发现和通信。
- 哨兵需要与从库和客户端建立连接以进行监控和通知。
- 主从切换由投票机制决定,任何哨兵都可以参与选举成为 leader。
❓
延伸问答
Redis 哨兵机制的主要功能是什么?
Redis 哨兵机制通过监控主库状态,确保高可用性,并在主库宕机时选举新的主库。
哨兵如何判断主库是否宕机?
哨兵通过发送 PING 命令监控主从库的网络连接,若超时则判断为主观下线,只有多数哨兵认为主库下线时才标记为客观下线。
新主库是如何选择的?
新主库的选择基于从库的状态、网络状态和优先级等条件,通过打分规则选出得分最高的从库作为新主库。
哨兵如何与客户端进行通信?
哨兵与客户端建立连接,及时通知主库下线的消息,客户端可以订阅哨兵消息以获取主从切换事件。
哨兵集群是如何组建的?
哨兵实例通过 Redis 提供的 pub/sub 机制互相发现和通信,发布自己的 IP 和端口信息以建立网络连接。
主从切换的投票机制是怎样的?
任何一个哨兵判断主库主观下线后,会向其他哨兵发送命令,其他哨兵投票,若多数赞成则主库被认为客观下线,随后进行 leader 选举。
➡️