基于多副本的领导者选举方法、装置、设备及存储介质制造方法及图纸

技术编号:33071364 阅读:9 留言:0更新日期:2022-04-15 10:05
本申请提供一种基于多副本的领导者选举方法、装置、设备及存储介质,涉及通信技术领域。该方法可以应用于目标集群,包括:通过各第一应用副本获取当前时刻的多个资源观察向量;根据当前时刻的多个资源观察向量和预设预测器,获取当前时刻各第一应用副本对应的预测提交延迟总和;根据当前时刻各第一应用副本对应的预测提交延迟总和,在当前时刻多个第一应用副本中确定第一目标领导者应用副本,实现了可以根据预设预测器以及当前时刻的多个资源观察向量,快速获取当前时刻各第一应用副本对应的预测提交延迟总和,进而可以在当前时刻多个第一应用副本中快速选举出第一目标领导者应用副本,具有选举方式简单、选举效率高的特点。选举效率高的特点。选举效率高的特点。

【技术实现步骤摘要】
基于多副本的领导者选举方法、装置、设备及存储介质


[0001]本申请涉及通信
,特别涉及一种基于多副本的领导者选举方法、装置、设备及存储介质。

技术介绍

[0002]集群是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。
[0003]现有的,为了增强集群的可靠性,集群中的应用程序一般以多副本形式部署以容忍故障停机或分布式故障。其中,为了保证多应用副本中数据的一致性,往往基于Raft算法确定多个应用副本中的领导者,以便基于该应用领导者可以确保在有序日志中对客户端请求进行排序进而可以将该请求转发到其他应用副本中。
[0004]但由于Raft算法比较复杂,因此,基于Raft算法确定多个应用副本中的领导者时,往往存在选举效率较低的问题。

技术实现思路

[0005]本申请的目的在于,针对上述现有技术中的不足,提供一种基于多副本的领导者选举方法、装置、设备及存储介质,可以提高选举效率。
[0006]为实现上述目的,本申请实施例采用的技术方案如下:第一方面,本专利技术提供一种基于多副本的领导者选举方法,应用于目标集群,所述目标集群包括:多个工作节点,所述工作节点中包括目标类应用程序对应的多个第一应用副本,所述方法包括:通过各第一应用副本获取当前时刻的多个资源观察向量,每个所述资源观察向量包括所对应的第一应用副本与其他第一应用副本之间的通信往返时间;根据当前时刻的多个所述资源观察向量和预设预测器,获取当前时刻各所述第一应用副本对应的预测提交延迟总和,其中,所述预设预测器用于预测获取各第一应用副本向上一任期领导者应用副本发起请求的预测提交延迟;根据当前时刻各第一应用副本对应的预测提交延迟总和,在当前时刻多个所述第一应用副本中确定第一目标领导者应用副本。
[0007]在可选的实施方式中,所述根据当前时刻的多个所述资源观察向量和预设预测器,获取当前时刻各所述第一应用副本对应的预测提交延迟总和之前,所述方法还包括:获取历史任期领导者应用副本对应的历史任期时间段内每个所述第一应用副本的资源观察向量和每个所述第一应用副本对应的提交延迟时间,并将多个所述第一应用副本作为多个训练样本,所述提交延迟时间用于表征所述第一应用副本向历史任期领导者应用副本转发客户端发送的请求消息的延迟时间;根据多个所述训练样本,训练获取所述预测器。
[0008]在可选的实施方式中,所述工作节点中还包括:其他类应用程序对应的多个第二
应用副本,所述根据当前时刻各第一应用副本对应的预测提交延迟总和,在当前时刻多个所述第一应用副本中确定第一目标领导者应用副本,包括:根据当前时刻各第一应用副本对应的预测提交延迟总和,在当前时刻多个所述第一应用副本中确定至少一个第一候选领导者应用副本;根据至少一个所述第一候选领导者应用副本和预设领导者平衡分布条件,在至少一个所述第一候选领导者应用副本中确定第一目标领导者应用副本,所述预设领导者平衡分布条件用于表征工作节点中领导者应用副本的最大数量。
[0009]在可选的实施方式中,所述目标集群配置有领导者管理对象,所述领导者管理对象包括:各工作节点上领导者应用副本的数量,所述根据至少一个所述第一候选领导者应用副本和预设领导者平衡分布条件,在至少一个所述第一候选领导者应用副本中确定第一目标领导者应用副本,包括:通过所述领导者管理对象获取当前时刻各工作节点上领导者应用副本的数量;根据当前时刻各工作节点上领导者应用副本的数量,获取满足预设领导者平衡分布条件的目标工作节点;根据至少一个所述第一候选领导者应用副本和所述目标工作节点,在至少一个所述第一候选领导者应用副本中确定第一目标领导者应用副本。
[0010]在可选的实施方式中,各类应用程序对应的多个应用副本被配置为对应一个副本管理对象,所述副本管理对象包括所对应的多个应用副本的领导者记录信息,所述领导者记录信息包括:领导者应用副本所在的工作节点标识和更新时间,所述方法还包括:通过所述副本管理对象获取各类应用副本对应的领导者记录信息;根据各类应用副本对应的领导者记录信息,获取各工作节点上领导者应用副本的数量并记录至所述领导者管理对象中。
[0011]在可选的实施方式中,所述方法还包括:分别获取目标集群中领导者应用副本的第一数量和工作节点的第二数量;根据所述第一数量和所述第二数量,确定所述预设领导者平衡分布条件。
[0012]在可选的实施方式中,每个所述资源观察向量还包括:所对应的第一应用副本的CPU资源占用率,和/或,所对应的第一应用副本的RAM资源占用率。
[0013]第二方面,本专利技术提供一种基于多副本的领导者选举装置,应用于目标集群,所述目标集群包括:多个工作节点,所述工作节点中包括目标类应用程序对应的多个第一应用副本,所述装置包括:第一获取模块,用于通过各第一应用副本获取当前时刻的多个资源观察向量,每个所述资源观察向量包括所对应的第一应用副本与其他第一应用副本之间的通信往返时间;第二获取模块,用于根据当前时刻的多个所述资源观察向量和预设预测器,获取当前时刻各所述第一应用副本对应的预测提交延迟总和,其中,所述预设预测器用于预测获取各第一应用副本向上一任期领导者应用副本发起请求的预测提交延迟;确定模块,用于根据当前时刻各第一应用副本对应的预测提交延迟总和,在当前时刻多个所述第一应用副本中确定第一目标领导者应用副本。
[0014]在可选的实施方式中,所述第二获取模块,还用于获取历史任期领导者应用副本
对应的历史任期时间段内每个所述第一应用副本的资源观察向量和每个所述第一应用副本对应的提交延迟时间,并将多个所述第一应用副本作为多个训练样本,所述提交延迟时间用于表征所述第一应用副本向历史任期领导者应用副本转发客户端发送的请求消息的延迟时间;根据多个所述训练样本,训练获取所述预测器。
[0015]在可选的实施方式中,所述工作节点中还包括:其他类应用程序对应的多个第二应用副本,所述确定模块,具体用于根据当前时刻各第一应用副本对应的预测提交延迟总和,在当前时刻多个所述第一应用副本中确定至少一个第一候选领导者应用副本;根据至少一个所述第一候选领导者应用副本和预设领导者平衡分布条件,在至少一个所述第一候选领导者应用副本中确定第一目标领导者应用副本,所述预设领导者平衡分布条件用于表征工作节点中领导者应用副本的最大数量。
[0016]在可选的实施方式中,所述目标集群配置有领导者管理对象,所述领导者管理对象包括:各工作节点上领导者应用副本的数量,所述确定模块,具体用于,通过所述领导者管理对象获取当前时刻各工作节点上领导者应用副本的数量;根据当前时刻各工作节点上领导者应用副本的数量,获取满足预设领导者平衡分布条件的目标工作节点;根据至少一个所述第一候选领导者应用副本和所述目标工作节点,在至少一个所述第一候选领导者应用副本中确定第一目标领导者应用副本。
[0017]在可选的实施方式中,各类应用程序对应的多个应用副本被配置为对应一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于多副本的领导者选举方法,其特征在于,应用于目标集群,所述目标集群包括:多个工作节点,所述工作节点中包括目标类应用程序对应的多个第一应用副本,所述方法包括:通过各第一应用副本获取当前时刻的多个资源观察向量,每个所述资源观察向量包括所对应的第一应用副本与其他第一应用副本之间的通信往返时间;根据当前时刻的多个所述资源观察向量和预设预测器,获取当前时刻各所述第一应用副本对应的预测提交延迟总和,其中,所述预设预测器用于预测获取各第一应用副本向上一任期领导者应用副本发起请求的预测提交延迟;根据当前时刻各第一应用副本对应的预测提交延迟总和,在当前时刻多个所述第一应用副本中确定第一目标领导者应用副本。2.根据权利要求1所述的方法,其特征在于,所述根据当前时刻的多个所述资源观察向量和预设预测器,获取当前时刻各所述第一应用副本对应的预测提交延迟总和之前,所述方法还包括:获取历史任期领导者应用副本对应的历史任期时间段内每个所述第一应用副本的资源观察向量和每个所述第一应用副本对应的提交延迟时间,并将多个所述第一应用副本作为多个训练样本,所述提交延迟时间用于表征所述第一应用副本向历史任期领导者应用副本转发客户端发送的请求消息的延迟时间;根据多个所述训练样本,训练获取所述预测器。3.根据权利要求1所述的方法,其特征在于,所述工作节点中还包括:其他类应用程序对应的多个第二应用副本,所述根据当前时刻各第一应用副本对应的预测提交延迟总和,在当前时刻多个所述第一应用副本中确定第一目标领导者应用副本,包括:根据当前时刻各第一应用副本对应的预测提交延迟总和,在当前时刻多个所述第一应用副本中确定至少一个第一候选领导者应用副本;根据至少一个所述第一候选领导者应用副本和预设领导者平衡分布条件,在至少一个所述第一候选领导者应用副本中确定第一目标领导者应用副本,所述预设领导者平衡分布条件用于表征工作节点中领导者应用副本的最大数量。4.根据权利要求3所述的方法,其特征在于,所述目标集群配置有领导者管理对象,所述领导者管理对象包括:各工作节点上领导者应用副本的数量,所述根据至少一个所述第一候选领导者应用副本和预设领导者平衡分布条件,在至少一个所述第一候选领导者应用副本中确定第一目标领导者应用副本,包括:通过所述领导者管理对象获取当前时刻各工作节点上领导者应用副本的数量;根据当前时刻各工作节点上领导者应用副本的数量,获取满足预设领导者平衡分布条件的目标工作节点...

【专利技术属性】
技术研发人员:陶荆朝郑军
申请(专利权)人:深圳艾灵网络有限公司
类型:发明
国别省市:

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

1