《redis高可用》之sentinel
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了《redis高可用》之sentinel,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1840字,纯文字阅读大概需要3分钟。
内容图文
![《redis高可用》之sentinel](/upload/InfoBanner/zyjiaocheng/868/add6e2f6ad2249cdab02b8094b6812b9.jpg)
启动sentinel
- 1)初始化服务器
- 2)将普通redis服务器使用的代码替换成sentinel专用代码
- 3)初始化sentinel状态
- 4)初始化sentinel的监视 主服务列表
- 5)创建连向主服务器的网络连接
1)初始化服务器
2)将普通redis服务器使用的代码替换成sentinel专用代码
sentinel只是运行在特殊模式下的redis服务器,它使用了和普通模式不同的命令表,所以sentinel模式能够使用的命令和普通redis服务器使用的命令不同
3)初始化sentinel状态
4)初始化sentinel的监视 主服务列表
sentinel会读入用户指定的配置文件,为每个要被监视的主服务器创建相应的实例结构
5)创建连向主服务器的网络连接
对于每个被sentinel监视的主服务器来说,sentinel会创建两个连向主服务器的异步网络连接
1)命令连接,这个连接专门用于向主服务器发送命令,并接受命令回复。
2)订阅连接,这个连接专门用于订阅主服务器的_sentinel_:hello频道
6)sentinel会向主服务器发送INFO命令来获取主服务器下所有从服务器,
并为这些从服务器创建响应的实例结构,以及连向这些从服务器的命令连接和订阅连接
7)一般情况下,sentinel会每十秒一次的频率向被监视的主服务器和从服务器发送INFO命令
当主服务器处于下线状态,或者sentinel正在对主服务器进行故障转移操作时,sentinel向从服务器发送INFO命令的频率会改为每秒一次
8)监视同一个主服务器和从服务器的多个sentinel,它们会以两秒一次的频率,通过向被监视的服务器的_sentinel_:hello频道发送消息来向其他sentinel宣告自己的存在。
每个sentinel也会从_sentinel_:hello频道接受其他sentinel发来的消息,并根据这些信息来为其他sentinel创建相应的实例结构,以及命令连接
9)sentinel以每秒一次的频率向实例(主服务器、从服务器、sentinel)发送PING命令,判断实例是否在线。
当一个实例在指定的时长连续向sentinel发送无效回复时,sentinel会将这个实例判断为主观下线
10)当sentinel将一个主服务器判断为主观下线时,他会先向同样监视这个主服务器的其他sentinel进行询问,看他们是否同意这个主服务器已经进入主观下线状态。
11)当sentinel收集到足够多的主观下线投票时,他会将主服务器判断为客观下线,并发起一次针对主服务器的故障转移操作。
内容总结
以上是互联网集市为您收集整理的《redis高可用》之sentinel全部内容,希望文章能够帮你解决《redis高可用》之sentinel所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。