【Redis】关于哨兵模式

news/2024/11/8 0:04:19/

连接步骤 

  一.客户端遍历所有的 Sentinel 节点集合,获取一个可用的 Sentinel 节点.

  二.客户端向可用的 Sentinel 节点发送 get-master-addr-by-name 命令,获取Redis Master 节点.

  三.客户端向Redis Master节点发送role或role replication 命令,来确定其是否是Master节点,并且能够获取其 slave节点信息.

  四.客户端获取到确定的节点信息后,便可以向Redis发送命令来进行后续操作了

  需要注意的是:客户端是和Sentinel来进行交互的,通过Sentinel来获取真正的Redis节点信息,然后来操作.实际工作时,Sentinel 内部维护了一个主题队列,用来保存Redis的节点信息,并实时更新,客户端订阅了这个主题,然后实时的去获取这个队列的Redis节点信息.

工作原理

  ①、三个定时任务

  一.每10秒每个 sentinel 对master 和 slave 执行info 命令:该命令第一个是用来发现slave节点,第二个是确定主从关系.

  二.每2秒每个 sentinel 通过 master 节点的 channel(名称为_sentinel_:hello) 交换信息(pub/sub):用来交互对节点的看法(后面会介绍的节点主观下线和客观下线)以及自身信息.

  三.每1秒每个 sentinel 对其他 sentinel 和 redis 执行 ping 命令,用于心跳检测,作为节点存活的判断依据.

  ②、主观下线和客观下线

  一.主观下线

  SDOWN:subjectively down,直接翻译的为”主观”失效,即当前sentinel实例认为某个redis服务为”不可用”状态.

  二.客观下线

  ODOWN:objecti


http://www.ppmy.cn/news/56411.html

相关文章

HR website

2023年最新招聘渠道一览表序号大 类小 类网 站 名网 址1综合类综合类企业总部人才网www.xzqrc.cn2前程无忧www.51job.com3智联招聘www.zhaopin.com4597招聘网www.597.com5中华英才网www.chinahr.com6一览英才网www.job1000.com7今日招聘招聘求职找工作_上今日招聘网站_找工作…

利用Bridge创建虚拟网络

利用Bridge创建虚拟网络 1 安装网桥模块。 # yum install -y bridge-utils(利用系统镜像文件作为本地YUM源,创建本地YUM源文件) 2 查询网桥模块。 # modinfo bridge ilename: /lib/modules/3.10.0-327.el7.x86_64/kernel/net/bridge/bridge.ko alias: …

【每日一题】4978:宠物小精灵之收服

目录 一:题目 二:分析 三:代码实现 一:题目 一天,小智和皮卡丘来到了小精灵狩猎场,里面有很多珍贵的野生宠物小精灵。小智也想收服其中的一些小精灵。然而,野生的小精灵并不那么容易被收服…

ATTCK v12版本战术介绍——防御规避(四)

一、引言 在前几期文章中我们介绍了ATT&CK中侦察、资源开发、初始访问、执行、持久化、提权战术理论知识及实战研究、部分防御规避战术,本期我们为大家介绍ATT&CK 14项战术中防御规避战术第19-24种子技术,后续会介绍防御规避其他子技术&#xf…

【网课平台】Day16.项目优化:压测、加缓存优化与分布式锁

文章目录 一、压力测试1、优化需求2、性能指标3、安装Jmeter4、压力测试5、优化日志 二、缓存优化1、给接口加Redis缓存2、缓存穿透3、解决缓存穿透4、缓存雪崩5、缓存击穿 三、分布式锁1、本地锁的问题2、IDEA一个项目启动多个实例3、分布式锁4、Redis NX实现分布式锁5、Redis…

spring事务传播机制

目录标题 事务的传播机制(7种)REQUIRED举个例子 REQUIRES_NEW举个例子 SUPPORTS举个例子 NOT_SUPPORTED举个例子 MANDATORY举个例子 NEVER举个例子 NESTED举个例子 PROPAGATION_NESTED 与PROPAGATION_REQUIRES_NEW的区别 事务的传播机制(7种&…

2的幂次方

2的幂次方 判断一个数是否为2的幂次方? 我们可以参考如下链接: 判断一个数是否为2的N次方 借鉴文中的分析,我认为: 其实一个数n,如果是2的幂次方数,则n的二进制原码中一定只有一个1,且在最高位&#xf…

Ubuntu 软件包管理

Ubuntu 软件包管理主要用到了 apt 和 dpkg 两个工具。我们用的最多的就是用他们提供的命令来安装和卸载软件,但他们是如何工作的,我们也许并不十分清楚,这几天,我专门梳理了一下,以下是我整理出来的一些资料&#xff0…