有一场面试中,面试官问我,
“要是服务器挂了,Redis缓存是不是没了?”
我回答不了解,随后他又问Redis哨兵模式有了解吗,当然我也不知道。
后面面完一查才发现,哨兵模式就是针对服务器宕机的,特此正好来学习记录一下
什么是哨兵模式
主机“宕机”:
- 将宕机的 master 下线
- 找一个 slave 作为 master
- 通知所有的 slave 连接新的 master
- 启动新的 master 和 slave
以上就存在几个问题,谁来确认主机宕机了?怎么重新找新的主机?修改配置后原来的主机好了怎么办呢?
自此,可以引入哨兵模式。
主从切换技术:当主机宕机后,需要手动把一台从(slave)服务器切换为主服务器,这就需要人工干预,费时费力,还回造成一段时间内服务不可用,所以推荐哨兵架构(Sentinel)来解决这个问题。(自动选主机的方式)
哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。
-
Sentinel(哨兵)进程是