目标集群的主节点竞选方法、装置以及电子设备制造方法及图纸

技术编号:39409827 阅读:20 留言:0更新日期:2023-11-19 16:01
本申请涉及一种目标集群的主节点竞选方法、装置以及电子设备。该方法包括:在目标集群中,在当前子节点的主节点异常的情况下,获取集群竞选序列,其中,目标集群内包括多个主节点和多个仲裁节点,每一个主节点对应有多个子节点,集群竞选序列中设置有每一个子节点竞选主节点的顺序;按照集群竞选序列中的顺序,向目标集群内的仲裁节点和/或主节点发起竞选请求,其中,竞选请求用于请求竞选当前子节点为主节点;在接收到的竞选回复消息的回复数量与发起的竞选请求的竞选数量之间的比值大于预定比例的情况下,确定当前子节点为主节点。本申请解决了Redis数据库的集群服务一直处于不可用状态的技术问题。可用状态的技术问题。可用状态的技术问题。

【技术实现步骤摘要】
目标集群的主节点竞选方法、装置以及电子设备


[0001]本申请涉及数据库领域,尤其涉及一种目标集群的主节点竞选方法、装置以及电子设备。

技术介绍

[0002]远程字典服务Redis数据库为一种单线程的内存键值对(key

value,kv)数据库服务,被广泛应用在互联网服务中。Redis cluster集群为Redis数据库的集群服务,集群内有多个节点,包括主节点、子节点与仲裁节点等。如果集群中有主节点在同一时间异常,则会有多个子节点在同一时间发起竞选请求,在此情况下,由于竞选的子节点多,因此每一个子节点收到的竞选回复消息都比较少,每一个子节点都无法竞选成为主节点,则集群一直处于不可用状态。
[0003]也就是说,现有技术中,Redis数据库的集群服务可能出现无法竞选出主节点而造成的集群一直处于不可用状态的问题。

技术实现思路

[0004]本申请提供了一种目标集群的主节点竞选方法、装置以及电子设备,以解决Redis数据库的集群服务一直处于不可用状态的技术问题。
[0005]第一方面,本申请提供了本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种目标集群的主节点竞选方法,其特征在于,应用于当前子节点,包括:在目标集群中,在所述当前子节点的主节点异常的情况下,获取集群竞选序列,其中,所述目标集群内包括多个主节点和多个仲裁节点,每一个所述主节点对应有多个子节点,所述集群竞选序列中设置有每一个所述子节点竞选主节点的顺序;按照所述集群竞选序列中的顺序,向所述目标集群内的仲裁节点和/或主节点发起竞选请求,其中,所述竞选请求用于请求竞选所述当前子节点为主节点;在接收到的竞选回复消息的回复数量与发起的竞选请求的竞选数量之间的比值大于预定比例的情况下,确定所述当前子节点为主节点。2.根据权利要求1所述的方法,其特征在于,所述按照所述集群竞选序列中的顺序,向所述目标集群内的仲裁节点和/或主节点发起竞选请求包括:在所述当前子节点在所述集群竞选序列中的顺序为第一位的情况下,向所述目标集群内的仲裁节点和/或主节点发起所述竞选请求;或者,在所述当前子节点在所述集群竞选序列中的顺序为非第一位的情况下,若所述集群竞选序列中位于所述当前子节点前的其他子节点处于竞选成功状态或者处于竞选等待状态,则向所述目标集群内的仲裁节点和/或主节点发起所述竞选请求,若所述其他子节点中任意一个子节点处于竞选状态,则等待发起所述竞选请求,其中,所述竞选等待状态为子节点竞选失败后等待的状态,所述竞选状态表示子节点正在竞选。3.根据权利要求1所述的方法,其特征在于,在按照所述集群竞选序列中的顺序,向所述目标集群内的仲裁节点和/或主节点发起竞选请求之前,所述方法还包括:根据所述当前子节点中存储的数据计算出一个数据范围;根据所述当前子节点的数据范围的大小与其他子节点的数据范围的大小确定所述当前子节点在所述集群竞选序列中的顺序。4.根据权利要求1所述的方法,其特征在于,所述按照所述集群竞选序列中的顺序,向所述目标集群内的仲裁节点和/或主节点发起竞选请求包括:向每一个所述主节点和/或所述仲裁节点发起所述竞选请求;或者从所述主节点和/或所述仲裁节点中选择出多个节点,向选择出的每一个节点发送所述竞选请求。5.根据权利要求1所述的方法,其特征在于,所述在接收到的竞选回复消息的回复数量与发起的竞选请求的竞选数量之间的比值大于预定比例的情况下,确定所述当前子节点为主节点包括:在向所述主节点和/或所述仲裁节点发送所述竞选请求后,在预定时长内统计接收到的所述竞选回复消息的回复数量,其中,每一个所述竞选请求对应一个超时时长,在所述超时时长内收到所述竞选回复消息的情况下,确定接收到所述竞选回复消息;将所述预定时长内的所述回复数量与发起的所述竞选请求的竞选数量做比,得到所述回复数量占所述竞选数量的比例;在所述比例大于预定比例的情况下,确定所述当前子节点为主节点。6.根据权利要求1所述的方法,其特征在于,在确定所述当前子节点为主节点之后,所述方法还包括:向第一子节点中的正常的子节点发送通知消息,其中,所述第一子节点为所述主节点
异常前,与所述当前子节点对应同一个主节...

【专利技术属性】
技术研发人员:王贺
申请(专利权)人:北京金山云网络技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1