服务器与数据库间的对应关系维护方法、装置和系统制造方法及图纸

技术编号:37975660 阅读:7 留言:0更新日期:2023-06-30 09:50
本公开提出一种服务器与数据库间的对应关系维护方法、装置和系统,该方法包括:如果第一辅节点状态切换,则确定第一辅节点切换至的节点状态;根据切换至的节点状态,获取处于第一任务状态的目标任务;以及确定与目标任务对应的第二辅节点,其中,第二辅节点用于加载目标任务,以对目标数据库中的数据进行处理。通过本公开能够实现动态地、自动化地维护服务器与数据库间的对应关系,无需依赖人工配置和维护,有效地简化服务器与数据库间的对应关系的部署配置。部署配置。部署配置。

【技术实现步骤摘要】
服务器与数据库间的对应关系维护方法、装置和系统


[0001]本公开涉及电子设备
,尤其涉及一种服务器与数据库间的对应关系维护方法、装置和系统。

技术介绍

[0002]相关技术中,业务相关的数据通常采用分库分表的存储方案,某些业务需要周期性对一些表的数据进行处理。例如,一组服务器(简称为worker)对应一台数据库(简称为db),为了保证服务器分组的高可用,在三个机房各部署1台,相当于3台服务器处理1台数据库的数据。
[0003]这种方式下,通过配置文件指定服务器与数据库间的对应关系,并且该配置文件还需要人工维护,容易出错,导致服务器与数据库间的对应关系的部署配置复杂。

技术实现思路

[0004]本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
[0005]为此,本公开的目的在于提出一种服务器与数据库间的对应关系维护方法、装置、系统、电子设备、存储介质及计算机程序产品,实现动态地、自动化地维护服务器与数据库间的对应关系,无需依赖人工配置和维护,有效地简化服务器与数据库间的对应关系的部署配置。
[0006]为达到上述目的,本公开第一方面实施例提出的服务器与数据库间的对应关系维护方法,被主节点执行,方法包括:如果第一辅节点状态切换,则确定第一辅节点切换至的节点状态;根据切换至的节点状态,获取处于第一任务状态的目标任务;以及确定与目标任务对应的第二辅节点,其中,第二辅节点用于加载目标任务,以对目标数据库中的数据进行处理。
[0007]在本公开的一些实施例中,切换至的节点状态包括:第一节点状态,第一节点状态用于指示第一辅节点已启动且未被分配任务;
[0008]其中,根据切换至的节点状态,获取处于第一任务状态的目标任务,包括:
[0009]确定多个候选任务,其中,候选任务对应候选任务状态,候选任务状态是第一任务状态、第二任务状态、第三任务状态,以及第四任务状态中的任一种;
[0010]如果多个候选任务状态中存在与第一任务状态相同候选任务状态,则将相同候选任务状态对应的候选任务作为目标任务;
[0011]如果多个候选任务状态中不存在与第一任务状态相同候选任务状态,则从多个候选辅节点中选择第三辅节点,并根据第三辅节点中已加载任务,获取目标任务。
[0012]在本公开的一些实施例中,从多个候选辅节点中选择第三辅节点,包括:
[0013]确定每个候选辅节点中的任务数量;
[0014]将多个任务数量中最多任务数量所属的候选辅节点作为第三辅节点。
[0015]在本公开的一些实施例中,根据第三辅节点中已加载任务,获取目标任务,包括:
[0016]向第三辅节点发送任务释放消息,其中,任务释放消息用于指示第三辅节点从多个已加载任务中释放目标任务;
[0017]接收第三辅节点发送的释放通知消息,其中,释放通知消息用于向主节点通知第三辅节点已释放目标任务。
[0018]在本公开的一些实施例中,确定与目标任务对应的第二辅节点,包括:
[0019]如果第一辅节点切换至第一节点状态,则向第一辅节点发送配置通知消息,其中,配置通知消息用于配置第一辅节点为与目标任务对应的第二辅节点。
[0020]在本公开的一些实施例中,切换至的节点状态包括:第二节点状态,第二节点状态用于指示第一辅节点已停机;
[0021]其中,根据切换至的节点状态,获取处于第一任务状态的目标任务,包括:
[0022]将第一辅节点释放的任务标记为第一任务状态,并将标记所得任务作为目标任务。
[0023]在本公开的一些实施例中,确定与目标任务对应的第二辅节点,包括:
[0024]如果第一辅节点切换至第二节点状态,则从多个候选辅节点中选择至少一个候选辅节点作为第二辅节点。
[0025]在本公开的一些实施例中,方法还包括:
[0026]向第一辅节点或第二辅节点发送任务加载消息,其中,任务加载消息用于指示第一辅节点或第二辅节点加载目标任务;
[0027]接收第一辅节点或第二辅节点发送的加载通知消息,并将目标任务由处于第一任务状态切换至处于第二任务状态,其中,加载通知消息用于向主节点通知第一辅节点或第二辅节点已加载目标任务。
[0028]在本公开的一些实施例中,切换至的节点状态包括:第三节点状态,第三节点状态用于指示第一辅节点的角色由辅节点角色切换至主节点角色;方法还包括:
[0029]确定多个候选任务,其中,候选任务对应候选任务状态,候选任务状态是第一任务状态、第二任务状态、第三任务状态,以及第四任务状态中的任一种;
[0030]根据多个候选任务和候选任务对应候选任务状态,生成所有任务列表;
[0031]从多个候选任务中选择第二任务状态的候选任务和第三任务状态的候选任务,并确定与所选择候选任务对应辅节点的标识信息;
[0032]根据所选择候选任务和辅节点的标识信息,生成已分配任务列表。
[0033]在本公开的一些实施例中,方法还包括:
[0034]将所有任务列表和/或已分配任务列表发送至第一辅节点。
[0035]本公开第一方面实施例提出的服务器与数据库间的对应关系维护方法,通过在第一辅节点状态切换的情况下,确定第一辅节点切换至的节点状态,并根据切换至的节点状态,获取处于第一任务状态的目标任务,以及确定与目标任务对应的第二辅节点,其中,第二辅节点用于加载目标任务,以对目标数据库中的数据进行处理,实现动态地、自动化地维护服务器与数据库间的对应关系,无需依赖人工配置和维护,有效地简化服务器与数据库间的对应关系的部署配置。
[0036]为达到上述目的,本公开第二方面实施例提出的服务器与数据库间的对应关系维护方法,被第一辅节点执行,包括:如果第一辅节点状态切换,则确定第一辅节点切换至的
节点状态,其中,切换至的节点状态用于使主节点确定目标任务,目标任务被第二辅节点加载以对目标数据库中的数据进行处理。
[0037]在本公开的一些实施例中,切换至的节点状态包括:第一节点状态,第一节点状态用于指示第一辅节点已启动且未被分配任务。
[0038]在本公开的一些实施例中,方法还包括:
[0039]接收主节点发送的配置通知消息,其中,配置通知消息用于配置第一辅节点为与目标任务对应的第二辅节点。
[0040]在本公开的一些实施例中,方法还包括:
[0041]接收主节点发送的任务加载消息,其中,任务加载消息用于指示第一辅节点加载目标任务;
[0042]加载目标任务,并对目标数据库中的数据进行处理;
[0043]向主节点发送加载通知消息,其中,加载通知消息用于向主节点通知第一辅节点已加载目标任务。
[0044]在本公开的一些实施例中,切换至的节点状态包括第二节点状态,第二节点状态用于指示第一辅节点已停机;其中,方法还包括:
[0045]释放所加载的任务。
[0046]在本公开的一些实施例本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务器与数据库间的对应关系维护方法,其特征在于,被主节点执行,所述方法包括:如果第一辅节点状态切换,则确定第一辅节点切换至的节点状态;根据所述切换至的节点状态,获取处于第一任务状态的目标任务;以及确定与所述目标任务对应的第二辅节点,其中,所述第二辅节点用于加载所述目标任务,以对目标数据库中的数据进行处理。2.如权利要求1所述的方法,其特征在于,所述切换至的节点状态包括:第一节点状态,所述第一节点状态用于指示所述第一辅节点已启动且未被分配任务;其中,所述根据所述切换至的节点状态,获取处于第一任务状态的目标任务,包括:确定多个候选任务,其中,所述候选任务对应候选任务状态,所述候选任务状态是第一任务状态、第二任务状态、第三任务状态,以及第四任务状态中的任一种;如果多个所述候选任务状态中存在与所述第一任务状态相同候选任务状态,则将所述相同候选任务状态对应的候选任务作为所述目标任务;如果多个所述候选任务状态中不存在与所述第一任务状态相同候选任务状态,则从多个候选辅节点中选择第三辅节点,并根据所述第三辅节点中已加载任务,获取所述目标任务。3.如权利要求2所述的方法,其特征在于,所述从多个候选辅节点中选择第三辅节点,包括:确定每个所述候选辅节点中的任务数量;将多个所述任务数量中最多任务数量所属的候选辅节点作为所述第三辅节点。4.如权利要求2所述的方法,其特征在于,所述根据所述第三辅节点中已加载任务,获取所述目标任务,包括:向所述第三辅节点发送任务释放消息,其中,所述任务释放消息用于指示所述第三辅节点从多个所述已加载任务中释放所述目标任务;接收所述第三辅节点发送的释放通知消息,其中,所述释放通知消息用于向所述主节点通知所述第三辅节点已释放目标任务。5.如权利要求2

4任一项所述的方法,其特征在于,所述确定与所述目标任务对应的第二辅节点,包括:如果所述第一辅节点切换至所述第一节点状态,则向所述第一辅节点发送配置通知消息,其中,所述配置通知消息用于配置所述第一辅节点为与所述目标任务对应的第二辅节点。6.如权利要求1所述的方法,其特征在于,所述切换至的节点状态包括:第二节点状态,所述第二节点状态用于指示所述第一辅节点已停机;其中,所述根据所述切换至的节点状态,获取处于第一任务状态的目标任务,包括:将所述第一辅节点释放的任务标记为第一任务状态,并将标记所得任务作为所述目标任务。7.如权利要求6所述的方法,其特征在于,所述确定与所述目标任务对应的第二辅节点,包括:如果所述第一辅节点切换至所述第二节点状态,则从多个候选辅节点中选择至少一个
候选辅节点作为所述第二辅节点。8.如权利要求5或7所述的方法,其特征在于,所述方法还包括:向所述第一辅节点或所述第二辅节点发送任务加载消息,其中,所述任务加载消息用于指示所述第一辅节点或所述第二辅节点加载所述目标任务;接收所述第一辅节点或所述第二辅节点发送的加载通知消息,并将所述目标任务由处于所述第一任务状态切换至处于第二任务状态,其中,所述加载通知消息用于向所述主节点通知所述第一辅节点或所述第二辅节点已加载所述目标任务。9.如权利要求1所述的方法,其特征在于,所述切换至的节点状态包括:第三节点状态,所述第三节点状态用于指示所述第一辅节点的角色由辅节点角色切换至主节点角色;所述方法还包括:确定多个候选任务,其中,所述候选任务对应候选任务状态,所述候选任务状态是第一任务状态、第二任务状态、第三任务状态,以及第四任务状态中的任一种;根据所述多个候选任务和所述候选任务对应候选任务状态,生成所有任务列表;从所述多个候选任务中选择所述第二任务状态的候选任务和所述第三任务状态的候选任务,并确定与所选择候选任务对应辅节点的标识信息;根据所述所选择候选任务和所述辅节点的标识信息,生成已分配任务列表。10.如权利要求9所述的方法,其特征在于,所述方法还包括:将所述所有任务列表和/或所述已分配任务列表发送至所述第一辅节点。11.一种服务器与数据库间的对应关系维护方法,其特征在于,被第一辅节点执行,所述方法包括:如果所述第一辅节点状态切换,则确定所述第一辅节点切换至的节点状态,其中,所述切换至的节点状态用于使主节点确定目标任务,所述目标任务被第二辅节点加载以对目标数据库中的数据进行处理。12.如权利要求11所述的方法,其特征在于,所述切换至的节点状态包括:第一节点状态,所述第一节点状态用于指示所述第一辅节点已启动且未被分配任务。13.如权利要求12所述的方法,其特征在于,所述方法还包括:接收所述主节点发送的配置通知消息,其中,所述配置通知消息用于配置所述第一辅节点为与所述目标任务对应的第二辅节点。14.如权利要求13所述的方法,其特征在于,所述方法还包括:接收主节点发送的任务加载消息,其中,所述任务加载消息用于指示所述第一辅节点加载所述目标任务;加载所述目标任务,并对所述目...

【专利技术属性】
技术研发人员:邱志磊
申请(专利权)人:京东科技信息技术有限公司
类型:发明
国别省市:

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

1