redis主从切换,一般主服务器宕机后,需要手动将一台从服务器切换为主服务器,会造成一段时间的服务不可用,所以使用哨兵
一种特殊的模式,redis提供了哨兵的命令,一个独立的进程,原理是:哨兵通过发送命令等待redis服务器响应,监控运行多个redis服务器
使用哨兵后客户端不在直接连接redis服务,而是使用sentinel代理获取redis服务,类似nginx的代理模式,
作用:
发送命令,让redis服务器返回监控以及运行,主从都包括
当哨兵检测到master服务器宕机后,会自动切换salve成master,然后通过发布订阅模式通知其他从服务器修改配置文件,切换主机
故障切换过程:
单个哨兵进程可能会出现问题,一般使用多个(最少3个)进行监控,各个哨兵之间还会进行监控当一个哨兵发现主服务器宕机后,不会立即进行故障切换,仅仅是其中一个哨兵人为的(主观下线),当后边的哨兵也发现主服务器不可用时,数量达到一个数值 后,哨兵会进行一次投票,由其中一个哨兵发起,进行故障切换,成功后通过发布订阅模式,让各个哨兵把自己监控的从服务器实现切换主机(客观下线)