一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种文件处理方法及集群系统与流程

2022-07-23 07:58:41 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,特别涉及一种文件处理方法及集群系统。


背景技术:

2.鉴于云平台具备支持应用的快速部署,以及根据用户的需求和应用的负载情况,按需提供应用所需的各种资源的能力,越来越多企业将应用部署在云平台。对于webservice服务,云平台提供了负载均衡策略,使得提供相同服务的不同容器能够响应不同的用户请求。
3.但是对于文件处理服务,云平台并没有提供类似于webservice服务的负载均衡策略,导致部署在不同的容器中的应用可能会同时访问并处理某个目录文件,进而导致重复处理相同文件的问题,造成系统资源浪费,并会加重数据库服务器的负担,影响文件处理速度。


技术实现要素:

4.本技术提供如下技术方案:
5.本技术一方面提供一种文件处理方法,包括:
6.第一容器组从数据库中获取所述第一容器组的第一信息和至少一个第二容器组的第二信息,所述第一信息至少包含所述第一容器组的哈希值,所述第二信息至少包含所述第二容器组的哈希值,所述第一容器组的哈希值和所述第二容器组的哈希值分别基于一致性哈希算法对所述第一容器组的标识和所述第二容器组的标识进行计算得到,所述第一容器组和至少一个所述第一容器组对应的应用相同;
7.所述第一容器组基于所述第一信息和至少一个所述第二容器组的第二信息,从所述第一容器组和至少一个所述第二容器组中确定出至少一个有效容器组;
8.所述第一容器组通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围;
9.所述第一容器组从待处理文件目录中读取至少一个文件,利用所述一致性哈希算法计算所述文件的哈希值;
10.若所述文件的哈希值在所述目标文件哈希值范围内,则将所述文件作为所述每相邻两个有效容器组中目标有效容器组的待处理文件;
11.其中,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前。
12.可选的,所述第一信息还包括:所述第一容器组的注册时间和任务调度次数,所述第二信息还包括:所述第二容器组的注册时间和任务调度次数;
13.所述第一容器组基于所述第一信息和至少一个所述第二容器组的第一信息,从所述第一容器组和至少一个所述第二容器组中确定出至少一个有效容器组,包括:
14.所述第一容器组,从第一容器组和至少一个所述第二容器组中,查找所述注册时间与当前时间之差在设定阈值范围内的容器组;
15.从所述注册时间与当前时间之差在设定阈值范围内的容器组中,查找所述任务调度次数在期望值范围内的容器组,将查找到的容器组作为有效容器组。
16.可选的,所述方法还包括:
17.所述第一容器组将所述数据库中所述第一容器组的注册时间更新为所述当前时间,并将所述数据库中所述第一容器组的任务调度次数更新为所述第一容器组的任务调度次数与1之和。
18.可选的,所述方法还包括:
19.所述第一容器组和至少一个所述第二容器组所属集群中调度节点响应所述应用的新增部署请求,将第三容器组加入所述第一容器组和至少一个所述第二容器组所属集群;
20.所述第三容器组将其第三信息写入所述数据库,所述第三信息至少包括:所述第三容器组的标识、哈希值、注册之间和任务调度次数,所述第三容器组的哈希值为基于所述一致性哈希算法对所述第三容器组的标识进行计算得到的。
21.可选的,所述方法还包括:
22.所述第一容器组和至少一个所述第二容器组所属集群中调度节点,在所述第一容器组和至少一个所述第二容器组中至少一个容器组被删除后,从所述数据库中删除被删除的容器组的信息。
23.本技术另一方面提供一种文件处理集群系统,包括:第一容器组、至少一个第二容器组和调度节点;
24.第一容器组,用于:
25.从数据库中获取所述第一容器组的第一信息和至少一个第二容器组的第二信息,所述第一信息至少包含所述第一容器组的哈希值,所述第二信息至少包含所述第二容器组的哈希值,所述第一容器组的哈希值和所述第二容器组的哈希值分别基于一致性哈希算法对所述第一容器组的标识和所述第二容器组的标识进行计算得到,所述第一容器组和至少一个所述第一容器组对应的应用相同;
26.基于所述第一信息和至少一个所述第二容器组的第二信息,从所述第一容器组和至少一个所述第二容器组中确定出至少一个有效容器组;
27.通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围;
28.从待处理文件目录中读取至少一个文件,利用所述一致性哈希算法计算所述文件的哈希值;
29.若所述文件的哈希值在所述目标文件哈希值范围内,则将所述文件作为所述每相邻两个有效容器组中目标有效容器组的待处理文件;
30.其中,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前。
31.可选的,所述第一信息还包括:所述第一容器组的注册时间和任务调度次数,所述
第二信息还包括:所述第二容器组的注册时间和任务调度次数;
32.所述第一容器组,具体可以用于:
33.从第一容器组和至少一个所述第二容器组中,查找所述注册时间与当前时间之差在设定阈值范围内的容器组;
34.从所述注册时间与当前时间之差在设定阈值范围内的容器组中,查找所述任务调度次数在期望值范围内的容器组,将查找到的容器组作为有效容器组。
35.可选的,所述第一容器组,还用于将所述数据库中所述第一容器组的注册时间更新为所述当前时间,并将所述数据库中所述第一容器组的任务调度次数更新为所述第一容器组的任务调度次数与1之和。
36.可选的,所述调度节点,用于响应所述应用的新增部署请求,将第三容器组加入所述第一容器组和至少一个所述第二容器组所属集群;
37.所述第三容器组,用于将其第三信息写入所述数据库,所述第三信息至少包括:所述第三容器组的标识、哈希值、注册之间和任务调度次数,所述第三容器组的哈希值为基于所述一致性哈希算法对所述第三容器组的标识进行计算得到的。
38.可选的,所述调度节点,还用于:
39.在所述第一容器组和至少一个所述第二容器组中至少一个容器组被删除后,从所述数据库中删除被删除的容器组的信息。
40.在本技术中,第一容器组从数据库中获取第一容器组的第一信息和至少一个第二容器组的第二信息,第一信息中第一容器组的哈希值和第二信息中第二容器组的第二哈希值分别基于一致性哈希算法对第一容器组的标识和第二容器组的标识进行计算得到,第一容器组基于第一信息和至少一个第二容器组的第二信息,从第一容器组和至少一个第二容器组中确定出至少一个有效容器组,第一容器组通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围,保证每个目标文件哈希值范围之间互不冲突,在此基础上,第一容器组从待处理文件目录中读取至少一个文件,利用一致性哈希算法计算文件的哈希值,若文件的哈希值在所述目标文件哈希值范围内,则将文件作为每相邻两个有效容器组中目标有效容器组的待处理文件,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前,实现每个有效容器组的待处理文件均不同,从而达到提高系统资源利用率,提高文件处理速度的目的。
附图说明
41.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
42.图1是本技术实施例1提供的一种文件处理方法的流程示意图;
43.图2是本技术提供的一种容器组的哈希值的分布场景示意图;
44.图3是本技术提供的一种容器组和文件的哈希值的分布场景示意图;
45.图4是本技术实施例2提供的一种文件处理方法的流程示意图;
46.图5是本技术实施例3提供的一种文件处理方法的流程示意图;
47.图6是本技术实施例4提供的一种文件处理方法的流程示意图。
具体实施方式
48.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
49.为使本技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本技术作进一步详细的说明。
50.参照图1,为本技术实施例1提供的一种文件处理方法的流程示意图,如图1所示,该方法可以包括但并不局限于以下步骤:
51.步骤s11、第一容器组从数据库中获取所述第一容器组的第一信息和至少一个第二容器组的第二信息。
52.所述第一信息至少包含所述第一容器组的哈希值,所述第二信息至少包含所述第二容器组的哈希值,所述第一容器组的哈希值和所述第二容器组的哈希值分别基于一致性哈希算法对所述第一容器组的标识和所述第二容器组的标识进行计算得到,所述第一容器组和至少一个所述第一容器组对应的应用相同。
53.第一容器组可以包括一个或多个第一容器;第二容器组可以包括一个或多个第二容器。
54.本实施例中,第一容器组可以为但不局限于kubernetes中的其中一个容器组,第二容器组为kubernetes中不同于第一容器组的容器组。
55.相应地,第一容器组可以为第一pod,第二容器组可以为第二pod。kubernetes可以理解为:开源的,用于管理云平台中多个主机上的容器化的应用,kubernetes的目标是让部署容器化的应用简单并且高效,kubernetes提供了应用部署,规划,更新,维护的一种机制。pod可以理解为kubernetes中可以创建和部署的最小也是最简的单位。一个pod代表着集群中运行的一个进程。pod代表着部署的一个单位kubernetes中应用的一个实例,可能由一个或者多个容器组合在一起共享资源。
56.本实施例中,基于一致性哈希算法对第一容器组的标识进行计算,得到第一容器组的哈希值的过程,可以包括:
57.通过关系式一keyi=hash(si)%2
^32
(i=1,2...或n),计算第一容器组的哈希值;
58.keyi表示第一容器组的哈希值,si表示第一容器组的标识。
59.第一容器组的标识可以为但不局限于:第一容器组的ip地址。
60.基于一致性哈希算法对第二容器组的标识进行计算,得到第二容器组的哈希值的过程,可以包括:
61.通过关系式二keyj=hash(sj)%2
^32
(j=1,2...n),计算第二容器组的哈希值;
62.j与i不同,keyj表示第二容器组的哈希值,sj表示第二容器组的标识。
63.第一容器组的哈希值和第二容器组的哈希值可以组织成一个虚拟的环形空间,如
图2所示,第一容器组的哈希值和第二容器组的哈希值在虚拟的环形空间中的位置不同。其中,图2中h1为标识为s1第一容器组的哈希值,h2为标识为s2的第二容器组的哈希值,h3为标识为s3的第二容器组的哈希值。
64.需要说明的是,图2仅为第一容器组的哈希值和第二容器组的哈希值映射到虚拟的环形空间中的其中一种示例,其不作为对第一容器组的哈希值和第二容器组的哈希值映射到虚拟的环形空间中的位置的限制。
65.步骤s12、所述第一容器组基于所述第一信息和至少一个所述第二容器组的第二信息,从所述第一容器组和至少一个所述第二容器组中确定出至少一个有效容器组。
66.本实施例中,第一信息还可以包括:第一容器组的注册时间和任务调度次数;第二信息还可以包括:第二容器组的注册时间和任务调度次数。
67.本步骤,可以包括但不局限于:
68.s121、所述第一容器组,从第一容器组和至少一个所述第二容器组中,查找所述注册时间与当前时间之差在设定阈值范围内的容器组,将查找到的容器组作为有效容器组。
69.或者,本步骤,可以包括但不局限于:
70.s122、所述第一容器组,从第一容器组和至少一个所述第二容器组中,查找所述注册时间与当前时间之差在设定阈值范围内的容器组。
71.设定阈值范围可以根据需要进行设置,在本技术中不做限制。
72.步骤s123、从所述注册时间与当前时间之差在设定阈值范围内的容器组中,查找所述任务调度次数在期望值范围内的容器组,将查找到的容器组作为有效容器组。
73.本实施例中,对应第一容器组设置的期望值范围与对应第二容器组设置的期望值范围可以不同。具体地,对应第一容器组设置的期望值范围可以为(0, ∞),对应第二容器组设置的期望值范围可以为[0, ∞)。
[0074]
相应地,从所述注册时间与当前时间之差在设定阈值范围内的容器组中,查找所述任务调度次数在期望值范围内的容器组,将查找到的容器组作为有效容器组,可以包括:
[0075]
从所述注册时间与当前时间之差在设定阈值范围内的容器组中,查找任务调度次数在(0, ∞)内的第一容器组及任务调度册数在[0, ∞)内的第二容器组,若查找到,将任务调度次数在(0, ∞)内的第一容器组合将任务调度次数在[0, ∞)内的第二容器组分别作为有效容器组。
[0076]
步骤s13、所述第一容器组通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围。
[0077]
本实施例中,对至少一个所述有效容器组的哈希值进行排序,可以按照哈希值从小到大的顺序对至少一个所述有效容器组的哈希值进行排序,或者,可以按照哈希值从大到小的顺序对至少一个所述有效容器组的哈希值进行排序。
[0078]
步骤s14、所述第一容器组从待处理文件目录中读取至少一个文件,利用所述一致性哈希算法计算所述文件的哈希值。
[0079]
本实施例中,利用所述一致性哈希算法计算所述文件的哈希值,可以包括:
[0080]
利用关系式三fj=hash(namej)%2
^32
,计算所述文件的哈希值;
[0081]fj
表示文件的哈希值,namej表示文件的文件名。
[0082]
待处理文件目录可以为但不局限于:pass云平台中的待处理文件目录。
[0083]
步骤s15、若所述文件的哈希值在所述目标文件哈希值范围内,则将所述文件作为所述每相邻两个有效容器组中目标有效容器组的待处理文件,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前。
[0084]
目标有效容器组的待处理文件的哈希值的范围可以表示为:
[0085][0086]
其中li表示目标有效容器组的待处理文件的范围,hi表示目标有效容器组的哈希值,h
i-1
表示每相邻两个有效容器组中除目标有效容器组的哈希值,fj表示文件的哈希值。
[0087]
需要说明的是,通过一致性哈希算法计算第一容器组、第二容器组和文件的哈希值,映射到的虚拟的环形空间中,0和2
32-1在虚拟的环形空间的零点中方向重合。相应地,哈希值为2
32-1的容器组在虚拟的环形空间中的位置与哈希值为0的容器组在虚拟的环形空间中的位置相同。
[0088]
例如,对应图2所示的容器组的哈希值,如图3所示,若文件的哈希值f2在h1和h2之间,则f2所属的文件为h2所属的标识为s2第二容器组的待处理文件;若文件的哈希值fm在h2和h3之间,则fm所属的文件为h3所属的标识为s3第二容器组的待处理文件;若文件的哈希值f1在h3和h1之间,则f1所属的文件为h1所属的标识为s1第一容器组的待处理文件。
[0089]
第一容器组可以定时执行文件处理文件,即上述步骤s11-s15,实现定时文件处理。
[0090]
在本实施例中,第一容器组从数据库中获取第一容器组的第一信息和至少一个第二容器组的第二信息,第一信息中第一容器组的哈希值和第二信息中第二容器组的第二哈希值分别基于一致性哈希算法对第一容器组的标识和第二容器组的标识进行计算得到,第一容器组基于第一信息和至少一个第二容器组的第二信息,从第一容器组和至少一个第二容器组中确定出至少一个有效容器组,第一容器组通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围,保证每个目标文件哈希值范围之间互不冲突,在此基础上,第一容器组从待处理文件目录中读取至少一个文件,利用一致性哈希算法计算文件的哈希值,若文件的哈希值在所述目标文件哈希值范围内,则将文件作为每相邻两个有效容器组中目标有效容器组的待处理文件,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前,实现每个有效容器组的待处理文件均不同,从而达到提高系统资源利用率,提高文件处理速度的目的。
[0091]
作为本技术另一可选实施例,参照图4,为本技术提供的一种文件处理方法实施例2的流程示意图,该方法可以包括但不局限于以下步骤:
[0092]
步骤s21、第一容器组从数据库中获取所述第一容器组的第一信息和至少一个第二容器组的第二信息。
[0093]
所述第一信息至少包含所述第一容器组的哈希值,所述第二信息至少包含所述第二容器组的哈希值,所述第一容器组的哈希值和所述第二容器组的哈希值分别基于一致性
哈希算法对所述第一容器组的标识和所述第二容器组的标识进行计算得到,所述第一容器组和至少一个所述第一容器组对应的应用相同。
[0094]
步骤s22、所述第一容器组基于所述第一信息和至少一个所述第二容器组的第二信息,从所述第一容器组和至少一个所述第二容器组中确定出至少一个有效容器组。
[0095]
步骤s23、所述第一容器组通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围。
[0096]
步骤s24、所述第一容器组从待处理文件目录中读取至少一个文件,利用所述一致性哈希算法计算所述文件的哈希值。
[0097]
步骤s25、若所述文件的哈希值在所述目标文件哈希值范围内,则将所述文件作为所述每相邻两个有效容器组中目标有效容器组的待处理文件。
[0098]
其中,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前。
[0099]
步骤s21-s25的详细过程可以参见实施例1中步骤s11-s15的相关介绍,在此不再赘述。
[0100]
步骤s26、所述第一容器组将所述数据库中所述第一容器组的注册时间更新为所述当前时间,并将所述数据库中所述第一容器组的任务调度次数更新为所述第一容器组的任务调度次数与1之和。
[0101]
在本技术中,第一容器组从数据库中获取第一容器组的第一信息和至少一个第二容器组的第二信息,第一信息中第一容器组的哈希值和第二信息中第二容器组的第二哈希值分别基于一致性哈希算法对第一容器组的标识和第二容器组的标识进行计算得到,第一容器组基于第一信息和至少一个第二容器组的第二信息,从第一容器组和至少一个第二容器组中确定出至少一个有效容器组,第一容器组通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围,保证每个目标文件哈希值范围之间互不冲突,在此基础上,第一容器组从待处理文件目录中读取至少一个文件,利用一致性哈希算法计算文件的哈希值,若文件的哈希值在所述目标文件哈希值范围内,则将文件作为每相邻两个有效容器组中目标有效容器组的待处理文件,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前,实现每个有效容器组的待处理文件均不同,从而达到提高系统资源利用率,提高文件处理速度的目的。
[0102]
并且,第一容器组在得到其待处理文件之后,可以更新数据库中第一容器组的第一信息,保证后续文件处理的准确性。
[0103]
作为本技术另一可选实施例,参照图3,为本技术提供的一种文件处理方法实施例3的流程示意图,该方法可以包括但不局限于以下步骤:
[0104]
步骤s31、第一容器组从数据库中获取所述第一容器组的第一信息和至少一个第二容器组的第二信息,所述第一信息至少包含所述第一容器组的哈希值,所述第二信息至少包含所述第二容器组的哈希值,所述第一容器组的哈希值和所述第二容器组的哈希值分别基于一致性哈希算法对所述第一容器组的标识和所述第二容器组的标识进行计算得到,
所述第一容器组和至少一个所述第一容器组对应的应用相同。
[0105]
步骤s32、所述第一容器组基于所述第一信息和至少一个所述第二容器组的第二信息,从所述第一容器组和至少一个所述第二容器组中确定出至少一个有效容器组。
[0106]
步骤s33、所述第一容器组通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围。
[0107]
步骤s34、所述第一容器组从待处理文件目录中读取至少一个文件,利用所述一致性哈希算法计算所述文件的哈希值。
[0108]
步骤s35、若所述文件的哈希值在所述目标文件哈希值范围内,则将所述文件作为所述每相邻两个有效容器组中目标有效容器组的待处理文件。
[0109]
其中,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前。
[0110]
步骤s31-s35的详细过程可以参见实施例1中步骤s11-s15的相关介绍,在此不再赘述。
[0111]
步骤s36、所述第一容器组和至少一个所述第二容器组所属集群中调度节点响应所述应用的新增部署请求,将第三容器组加入所述第一容器组和至少一个所述第二容器组所属集群。
[0112]
步骤s37、所述第三容器组将其第三信息写入所述数据库,所述第三信息至少包括:所述第三容器组的标识、哈希值、注册之间和任务调度次数,所述第三容器组的哈希值为基于所述一致性哈希算法对所述第三容器组的标识进行计算得到的。
[0113]
本实施例中,可以为所述应用部署新的第三容器组,并将第三容器组的第三信息写入所述数据库,保证后续文件处理的准确性。
[0114]
作为本技术另一可选实施例,参照图4,为本技术提供的一种文件处理方法实施例4的流程示意图,该方法可以包括但不局限于以下步骤:
[0115]
步骤s41、第一容器组从数据库中获取所述第一容器组的第一信息和至少一个第二容器组的第二信息。
[0116]
所述第一信息至少包含所述第一容器组的哈希值,所述第二信息至少包含所述第二容器组的哈希值,所述第一容器组的哈希值和所述第二容器组的哈希值分别基于一致性哈希算法对所述第一容器组的标识和所述第二容器组的标识进行计算得到,所述第一容器组和至少一个所述第一容器组对应的应用相同。
[0117]
步骤s42、所述第一容器组基于所述第一信息和至少一个所述第二容器组的第二信息,从所述第一容器组和至少一个所述第二容器组中确定出至少一个有效容器组。
[0118]
步骤s43、所述第一容器组通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围。
[0119]
步骤s34、所述第一容器组从待处理文件目录中读取至少一个文件,利用所述一致性哈希算法计算所述文件的哈希值。
[0120]
步骤s45、若所述文件的哈希值在所述目标文件哈希值范围内,则将所述文件作为所述每相邻两个有效容器组中目标有效容器组的待处理文件。
[0121]
其中,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算
法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前。
[0122]
步骤s41-s45的详细过程可以参见实施例1中步骤s11-s15的相关介绍,在此不再赘述。
[0123]
步骤s46、所述第一容器组和至少一个所述第二容器组所属集群中调度节点,在所述第一容器组和至少一个所述第二容器组中至少一个容器组被删除后,从所述数据库中删除被删除的容器组的信息。
[0124]
本实施例中,当一个容器组被删除后,其注册时间和任务调度次数便不再更改,所述第一容器组和至少一个所述第二容器组所属集群中调度节点,在所述第一容器组和至少一个所述第二容器组中至少一个容器组被删除后,从所述数据库中删除被删除的容器组的信息,可以节省数据库的空间,并减少有效容器组的判断时间。
[0125]
接下来对本技术提供的一种文件处理集群系统进行介绍,下文介绍的文件处理集群系统与上文介绍的文件处理方法可相互对应参照。
[0126]
文件处理集群系统,可以包括:第一容器组、至少一个第二容器组和调度节点;
[0127]
第一容器组,用于:
[0128]
从数据库中获取所述第一容器组的第一信息和至少一个第二容器组的第二信息,所述第一信息至少包含所述第一容器组的哈希值,所述第二信息至少包含所述第二容器组的哈希值,所述第一容器组的哈希值和所述第二容器组的哈希值分别基于一致性哈希算法对所述第一容器组的标识和所述第二容器组的标识进行计算得到,所述第一容器组和至少一个所述第一容器组对应的应用相同;
[0129]
基于所述第一信息和至少一个所述第二容器组的第二信息,从所述第一容器组和至少一个所述第二容器组中确定出至少一个有效容器组;
[0130]
通过对至少一个所述有效容器组的哈希值进行排序,将每相邻两个有效容器组的哈希值之间的哈希值范围作为目标文件哈希值范围;
[0131]
从待处理文件目录中读取至少一个文件,利用所述一致性哈希算法计算所述文件的哈希值;
[0132]
若所述文件的哈希值在所述目标文件哈希值范围内,则将所述文件作为所述每相邻两个有效容器组中目标有效容器组的待处理文件;
[0133]
其中,按照顺时针方向查找,所述目标有效容器组的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置位于所述文件的哈希值在所述一致性哈希算法对应的虚拟环形空间中的位置之前。
[0134]
本实施例中,所述第一信息还包括:所述第一容器组的注册时间和任务调度次数,所述第二信息还包括:所述第二容器组的注册时间和任务调度次数;
[0135]
所述第一容器组,具体可以用于:
[0136]
从第一容器组和至少一个所述第二容器组中,查找所述注册时间与当前时间之差在设定阈值范围内的容器组;
[0137]
从所述注册时间与当前时间之差在设定阈值范围内的容器组中,查找所述任务调度次数在期望值范围内的容器组,将查找到的容器组作为有效容器组。
[0138]
本实施例中,所述第一容器组,还用于将所述数据库中所述第一容器组的注册时
间更新为所述当前时间,并将所述数据库中所述第一容器组的任务调度次数更新为所述第一容器组的任务调度次数与1之和。
[0139]
本实施例中,所述调度节点,用于响应所述应用的新增部署请求,将第三容器组加入所述第一容器组和至少一个所述第二容器组所属集群;
[0140]
所述第三容器组,用于将其第三信息写入所述数据库,所述第三信息至少包括:所述第三容器组的标识、哈希值、注册之间和任务调度次数,所述第三容器组的哈希值为基于所述一致性哈希算法对所述第三容器组的标识进行计算得到的。
[0141]
本实施例中,所述调度节点,还用于:
[0142]
在所述第一容器组和至少一个所述第二容器组中至少一个容器组被删除后,从所述数据库中删除被删除的容器组的信息。
[0143]
需要说明的是,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0144]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0145]
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本技术时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
[0146]
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例或者实施例的某些部分所述的方法。
[0147]
以上对本技术所提供的一种文件处理方法及集群系统进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献