redis-sentinel
redis-sentinel是redis官方提供的高可用解决方案,当redis做主从高可用时,需要手动切换,redis-sentinel则会自动切换,它是一个独立运行的进程,监控多个主从集群。
工作流程
1,多个sentinel发现并确认master有问题。
2,选举出一个sentinel作为领导。
3,选出一个slave作为master。
4,通知其余slave成为新的master的slave
5,通知客户端发生主从变化。
6,等待以前的master成为新的master的slave。
主观宕机和客观宕机
主观宕机就是一个哨兵如果觉得一个主节点宕机了,那么就是主观宕机。
客观宕机就是在哨兵互相通信时接收到超过半数都发现主节点主观宕机的信息,那么就是客观宕机,这也是为什么哨兵的个数是奇数,并且最小为3。