怎么解析Redis中的哨兵模式原理


今天就跟大家聊聊有关怎么解析Redis中的哨兵模式原理,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 本篇文章带大家深入理解下Redis哨兵模式原理,聊聊sentinel能干什么,启动sentinel方法和Sentinel工作流程,希望对大家有所帮助!Redis Sentinel是Redis的官方高可用性解决方案。Redis Sentinel为Redis提供高可用性。实际上,这意味着使用Sentinel可以创建一个Redis集群,在没有人为干预的情况下抵抗某些类型的失败,自动实现故障转移。【相关推荐:Redis视频教程】1、监控redis集群节点(master+replica)和sentinel节点健康状态2、自动故障转移:如果master出现故障,sentinel可以实现故障转移,并且通知客户端连接新的master。3、通知:通过api,可以发送通知到管理员,开发人员,监控的redis实例出现了故障4、配置中心:客户端连接到sentinel,sentinel可以访问master将节点信息返回给客户端1、redis-sentinel /path/to/sentinel.conf2、redis-server /path/to/sentinel.conf –sentinelsentinel.conf配置说明如下注意点:Redis-sentinel必须使用配置文件启动,重启需要根据配置文件恢复,默认打开26379端口,sentinel之间必须开放端口访问,方便相互访问。1、首先sentinel之间是通过redis的pub/subscribe机制实现动态感知。客观下线:当主观下线的节点是主节点时,哨兵节点会通过指令sentinel is-masterdown-by-addr寻求其它哨兵节点对主节点的判断,当超过quorum(在sentinel配置中配置的法定人数)个数,此时哨兵节点则认为该主节点确实有问题,这样就客观下线了,大部分哨兵节点都同意下线操作,也就说是客观下线。注意客观下线只针对master节点生效,它会触发故障转移3,master下线了,需要进行故障转移这里又分为两步,首先需要选择sentinel哨兵主节点,通过sentinel主节点来进行redis的故障转移。首先是sentinel选举领导者。使用raft算法(状态共识算法)。每一个Sentinel节点都可以成为Leader,当一个Sentinel节点确认redis集群的主节点主观下线后,会请求其他Sentinel节点要求将自己选举为Leader。被请求的Sentinel节点如果没有同意过其他Sentinel节点的选举请求,则同意该请求(选举票数+1),否则不同意。如果一个Sentinel节点获得的选举票数达到Leader最低票数(quorum和Sentinel节点数/2+1的最大值),则该Sentinel节点选举为Leader;否则重新进行选举。Raft核心思想:先到先得,少数服从多数。sentinel选举出主节点后,sentinel主节点需要选举出redis集群主节点,构建新的集群关系。选举新redis主节点的依据是:1、与sentinel断开连接的时间。过滤发现与主sentinel服务器断开连接的时间超过配置的主机超时时间down-after-milliseconds的副本slaves2、副本优先级。 优先选择replica-priority低的。3、如果优先级相同,已处理复制偏移量。越大越优先,这个更符合业务场景功能。4、如果复制offset相同,就看运行ID。优先选择小的。选择出master节点后,开始维护集群关系。1、sentinel节点,向新主节点发送,slave no one命令,让它成为独立节点2、sentinel节点,向其他节点发送 slaveof ip port,跟随到主节点通过上面的分析,sentinel通过定时监控手段,可以实现自动故障转移,不过sentinel还是有一些问题,比如单个master节免费云主机域名点情况下,数据存在丢失的可能,并且如果单机性能有限,也没有横向扩展的能力。看完上述内容,你们对怎么解析Redis中的哨兵模式原理有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注百云行业资讯频道,感谢大家的支持。

相关推荐: ORACLE中有哪些日期类型

ORACLE中有哪些日期类型,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。数据库中有4中日期类型:1、DATE:是最早和使用最广的日期类型,使用示例如下。DATE is the oldest an…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 01/16 16:49
下一篇 01/16 16:49