负载均衡的数据采集方法及装置与流程

文档序号:25420149发布日期:2021-06-11 21:31阅读:207来源:国知局
负载均衡的数据采集方法及装置与流程

本发明涉及互联网领域,尤其涉及一种负载均衡的数据采集方法及装置。



背景技术:

随着目前网络设备管理量的逐渐增大,为了保障各类数据采集的稳定性,避免采集服务器出现异常或者故障导致数据采集中断的现象,现有网管系统的采集服务器多数具备负载均衡功能,按照当前系统的任务执行情况、cpu内存利用率、内存利用率和磁盘利用率对采集任务进行调度。上述负载均衡的采集方法,一般采用传统的软硬件负荷和采集任务状态相结合的方式,但上述方法只针对单业务的数据采集进行调度,无法实现多个业务在数据采集时的负载均衡调度。



技术实现要素:

本发明实施例提出一种负载均衡的数据采集方法,用以实现多个业务的数据采集时的负载均衡调度,该方法包括:

确定多个对等群组,每个对等群组包括多个对等采集节点,所述多个对等采集节点用于执行同一业务的同一任务类型的多个数据采集任务;

确定每个对等采集节点的负荷阈值;

在获得新增数据采集任务后,将新增数据采集任务按照任务类型和所在业务分配至满足预设分配条件的对等采集节点上,所述预设分配条件是根据每个对等采集节点的负荷阈值确定的;

对每一对等采集节点,若该对等采集节点满足预设调整条件,在该对等采集节点所在的对等群组范围内,调整该对等采集节点上的数据采集任务,所述预设调整条件是根据该对等采集节点的负荷阈值确定的。

本发明实施例提出一种负载均衡的数据采集装置,用以实现多个业务的数据采集时的负载均衡调度,该装置包括:

对等群组确定模块,用于确定多个对等群组,每个对等群组包括多个对等采集节点,所述多个对等采集节点用于执行同一业务的同一任务类型的多个数据采集任务;

负荷阈值确定模块,用于确定每个对等采集节点的负荷阈值;

分配模块,用于在获得新增数据采集任务后,将新增数据采集任务按照任务类型和所在业务分配至满足预设分配条件的对等采集节点上,所述预设分配条件是根据每个对等采集节点的负荷阈值确定的;

调整模块,用于对每一对等采集节点,若该对等采集节点满足预设调整条件,在该对等采集节点所在的对等群组范围内,调整该对等采集节点上的数据采集任务,所述预设调整条件是根据该对等采集节点的负荷阈值确定的。

本发明实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述负载均衡的数据采集方法。

本发明实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述负载均衡的数据采集方法的计算机程序。

在本发明实施例中,确定多个对等群组,每个对等群组包括多个对等采集节点,所述多个对等采集节点用于执行同一业务的同一任务类型的多个数据采集任务;确定每个对等采集节点的负荷阈值;在获得新增数据采集任务后,将新增数据采集任务按照任务类型和所在业务分配至满足预设分配条件的对等采集节点上,所述预设分配条件是根据每个对等采集节点的负荷阈值确定的;对每一对等采集节点,若该对等采集节点满足预设调整条件,在该对等采集节点所在的对等群组范围内,调整该对等采集节点上的数据采集任务,所述预设调整条件是根据该对等采集节点的负荷阈值确定的。在上述过程中,由于确定了多个对等群组,且每个对等群组中的多个对等采集节点可用于执行同一业务的同一任务类型的多个数据采集任务,在新增数据采集任务时,是按照新增数据采集对应的业务进行分配的;且后续调整数据采集任务时,都只在对等采集节点所在的对等群组范围内调整,从而避免了影响其他对等群组的数据采集,实现了可同时进行多个业务的数据采集时的负载均衡调度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1为本发明实施例中负载均衡的数据采集方法的流程图;

图2为本发明实施例提出的负载均衡的数据采集方法的详细流程图;

图3为本发明实施例中负载均衡的数据采集装置的示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。

在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。

图1为本发明实施例中负载均衡的数据采集方法的流程图,如图1所示,该方法包括:

步骤101,确定多个对等群组,每个对等群组包括多个对等采集节点,所述多个对等采集节点用于执行同一业务的同一任务类型的多个数据采集任务;

步骤102,确定每个对等采集节点的负荷阈值;

步骤103,在获得新增数据采集任务后,将新增数据采集任务按照任务类型和所在业务分配至满足预设分配条件的对等采集节点上,所述预设分配条件是根据每个对等采集节点的负荷阈值确定的;

步骤104,对每一对等采集节点,若该对等采集节点满足预设调整条件,在该对等采集节点所在的对等群组范围内,调整该对等采集节点上的数据采集任务,所述预设调整条件是根据该对等采集节点的负荷阈值确定的。

在本发明实施例中,由于确定了多个对等群组,且每个对等群组中的多个对等采集节点可用于执行同一业务的同一任务类型的多个数据采集任务,在新增数据采集任务时,是按照新增数据采集对应的业务进行分配的;且后续调整数据采集任务时,都只在对等采集节点所在的对等群组范围内调整,从而避免了影响其他对等群组的数据采集,实现了可同时进行多个业务的数据采集时的负载均衡调度。

具体实施时,在步骤101中,可以确定多个对等群组,这些对等群组可以采用分布式物理结构,统一放在采集资源池中,但对等群组本申请是一个集合,包括多个对等采集节点,一个对等群组中的对等采集节点都执行同一业务的同一任务类型的多个数据采集任务,例如,对等群组1包括5个对等采集节点,都用于执行承载网业务的配置数据采集任务。也可以说,这些对等采集节点上的适配器一致,都同于执行同一类型的任务。本发明实施例中的负载均衡管控都是基于对等采集节点进行的。

在步骤102中,确定每个对等采集节点的负荷阈值,由于每个对等采集节点上可部署多个数据采集任务,为了避免超负荷运行导致对等采集节点崩溃,需要监控每个对等采集节点负荷是否超过了负荷阈值,对等采集节点的负荷阈值可以根据如下监控数据中的至少一种确定:

数据采集任务执行成功率、采集时延、对等采集节点已执行的数据采集任务总数、对等节点中适配器的采集队列长度、采集机整体负荷。

实时监控上述数据可得到对等采集节点的当前负荷,根据监控的历史数据则可以得到对等采集节点的负荷阈值。

在步骤103中,需要将新增数据采集任务分配至其中一个对等采集节点上,首先,需要确定该新增数据采集任务所在业务和任务类型,例如,一个新增数据采集任务为承载网业务,任务类型为配置任务,那么需要找承载网的配置数据采集任务对应的对等群组,然后分配至这个对等群组中的一个对等采集节点上,因此,上述新增数据采集任务的分配考虑的业务和任务类型,实现了考虑不同业务的数据采集时的负载均衡调度。

在步骤104中,隐含了该对等采集节点满足预设调整条件时才启动调整,实时检测每个对等采集节点是否满足预设调整条件,满足之后,即对该对等采集节点上的数据采集任务进行调整,但是都是在该对等采集节点所在的对等群组范围内调整,这个对等群组是针对同一业务的,因此,实现了不同业务的数据采集时的负载均衡调度。另外,上述预设调整条件一般是对等采集节点出现异常了或超过负荷阈值了,因此,本发明实施例提出的方法考虑到执行采集任务的对等采集节点出现异常时需要进行调整的情况,避免了导致整个采集系统的瘫痪。

具体实施时,每个对等采集节点的负荷阈值可以有多个标准,可以有一个,也可以有多个。

在一实施例中,所述每个对等采集节点的负荷阈值包括第一负荷阈值、第二负荷阈值和第三负荷阈值,其中第一负荷阈值<第二负荷阈值<第三负荷阈值。

在上述实施例中,定义了多个负荷阈值,定义的负荷阈值越多,负载均衡调整的越精确。

其中,第一负荷阈值可以标记为adjust_limit,第二负荷阈值可以标记为soft_limit,第三负荷阈值可以标记为和hard_limit,一个对等采集节点的负载可以超过其soft_limit,而不能超过起hard_limit。

在步骤103中,所述预设分配条件也可以有多个,预设分配条件越多,数据采集任务分配过程越精细。

在一实施例中,所述预设分配条件包括第一预设分配条件和第二预设分配条件,其中,第一预设分配条件为对等采集节点的当前负荷未达到第一负荷阈值,第二预设分配条件为对等采集节点的当前负荷大于第一负荷阈值且小于第二负荷阈值;

在获得新增数据采集任务后,将新增数据采集任务按照任务类型和所在业务分配至满足预设分配条件的对等采集节点上,所述预设分配条件是根据每个对等采集节点的负荷阈值确定的,包括:

在获得新增数据采集任务后,确定该新增数据采集任务的任务类型和所在业务对应的对等群组;

从满足第一预设分配条件的所述对等群组的所有对等采集节点中,确定当前负荷最小的对等采集节点,将新增数据采集任务分配至所述当前负荷最小的对等采集节点;

在所有对等采集节点均不满足第一预设分配条件时,从所有满足第二预设分配条件的所述对等群组的所有对等采集节点中确定当前负荷最小的对等采集节点,将新增数据采集任务分配至所述当前负荷最小的对等采集节点;

在所有对等采集节点均不满足第一预设分配条件且不满足第二预设分配条件时,丢弃所述新增数据采集任务。

在上述实施例中,根据预设分配条件的数量,给出了数据采集任务分配的三种情况,在第一种情况中,先获得满足第一预设分配条件的所述对等群组的所有对等采集节点,由于第一预设分配条件为对等采集节点的当前负荷未达到第一负荷阈值,而第一负荷阈值相对于第二负荷阈值和第三负荷阈值来说是最小的,因此,相当于找到数据分配任务量相对脚下的对等采集节点,确定当前负荷最小的对等采集节点,将新增数据采集任务分配至所述当前负荷最小的对等采集节点,这是一个最优方案,可以理解的是,也可以从满足第一预设分配条件的所述对等群组的所有对等采集节点中挑选一个当前负荷相对小的对等采集节点让用户确认,用户如果接收,则可以使用。第二种情况为所有对等采集节点均不满足第一预设分配条件时,那么判断是否满足第二预设分配条件,再查找当前负荷最小的对等采集节点,将新增数据采集任务分配至所述当前负荷最小的对等采集节点。由于一个对等采集节点的负荷不能超过第三负荷阈值,因此,超过第三负荷阈值的对等采集节点时不分配新增数据采集任务的,那么在第三种情况中,在所有对等采集节点均不满足第一预设分配条件且不满足第二预设分配条件时,丢弃所述新增数据采集任务。

新增数据采集任务除了有上述的分配方式外,还可以其他的分配方式。

在一实施例中,所述方法还包括:

确定新增数据采集任务的优先级;

获得所述对等群组的所有对等采集节点上的所有数据采集任务的优先级;

在所有对等采集节点均不满足第一预设分配条件且不满足第二预设分配条件时,查找所述对等群组的所有对等采集节点上的所有数据采集任务中优先级最低的数据采集任务,获得优先级最低的数据采集任务列表;

接收用户根据所述优先级最低的数据采集任务列表输入的需丢弃的数据采集任务;

丢弃所述需丢弃的数据采集任务,将新增数据采集任务按照任务类型分配至满足预设分配条件的对等采集节点上。

在上述实施例中,确定新增数据采集任务的优先级,每一个数据采集任务的优先级根据如下条件中的至少之一确定:

数据采集任务对应的业务,所需设备类型,所需响应时间,采集数据类型。

表1给出了一个根据数据采集任务对应的业务、数据类型确定优先级的示例,其中优先级为1代表优先级最高。

表1根据数据采集任务对应的业务、数据类型确定优先级的示例

由于每个新增的数据采集任务都确定了优先级,因此,对等群组的所有对等采集节点上的所有数据采集任务都包括了优先级,获得这些数据采集任务的优先级。在所有对等采集节点均不满足第一预设分配条件且不满足第二预设分配条件时,除了在之前的实施例中放弃所述新增数据采集任务,还可以采用其他的方式,在本实施例中,查找所述对等群组的所有对等采集节点上的所有数据采集任务中优先级最低的数据采集任务,获得优先级最低的数据采集任务列表;这个优先级最低的数据采集任务列表可以通过界面的形式输出给用户,用户可以从中选择需丢弃的数据采集任务,最后丢弃用户选择的这些需丢弃的数据采集任务,并将新增数据采集任务按照任务类型分配至满足预设分配条件的对等采集节点上,另外,在上述过程中,还可以衍生出另一个实施例,即如果这个优先级最低的数据采集任务列表可以通过界面的形式输出给用户后,隔了设定时长后,用户不予从列表中进行选择,那么可以默认放弃新增数据采集任务。

具体实施时,对每一对等采集节点,若该对等采集节点满足预设调整条件,在该对等采集节点所在的对等群组范围内,调整该对等采集节点上的数据采集任务的方法有多种,下面给出其中一个实施例。

在一实施例中,对每一对等采集节点,若该对等采集节点满足预设调整条件,在该对等采集节点所在的对等群组范围内,调整该对等采集节点上的数据采集任务,包括:

对每一对等采集节点,若该对等采集节点满足预设调整条件,确定该对等采集节点所在的对等群组范围内能够接收数据采集任务的对等采集节点的第一列表;

在所述第一列表不为空时,从所述第一列表中查找当前负荷最小的对等采集节点;

确定该对等采集节点中需调整的数据采集任务;

将所述需调整的数据采集任务调整至当前负荷最小的对等采集节点上。

在上述实施例中,可根据实际情况确定预设调整条件,然后,确定该对等采集节点所在的对等群组范围内能够接收数据采集任务的对等采集节点的第一列表,也即是说第一列表中可能有多个能够接收数据采集任务的对等采集节点,当然也可能为空,在在所述第一列表不为空时,从所述第一列表中查找当前负荷最小的对等采集节点,这里是最优方案,也可以根据实际情况,从所述第一列表中随机确定一个对等采集节点也是可以的;然后,需要进行调整,即将该对等采集节点中需调整的数据采集任务调整至当前负荷最小的对等采集节点上,那么就要确定哪些是需调整的数据采集任务,在上述已经知道了该对等采集节点满足预设调整条件,而预设调整条件是根据对等采集节点的负荷阈值确定的,因此,可知该对等采集节点的当前负荷超过负荷阈值的程度,例如超过了1个负荷单位,而1个负荷单位对应着若干数据采集任务,那么将这若干数据采集任务确定为需调整的数据采集任务,负荷与数据采集任务的对应关系可以预先存储在配置文件里,每次进行判断时,读取配置文件即可,实现灵活定制。

在一实施例中,预设调整条件包括第一预设调整条件和第二预设调整条件,其中,第一预设调整条件为对等采集节点的当前负荷大于第一负荷阈值且小于第二负荷阈值,第二预设调整条件为对等采集节点的当前负荷大于第二负荷阈值且小于第三负荷阈值,第三预设调整条件为对等采集节点的当前负荷大于第三负荷阈值;

对每一对等采集节点,若该对等采集节点满足预设调整条件,确定该对等采集节点所在的对等群组范围内能够接收数据采集任务的对等采集节点的第一列表,包括:

对每一对等采集节点,若该对等采集节点满足第一预设调整条件,确定所述第一列表包括该对等采集节点所在的对等群组范围内当前负荷小于第一负荷阈值的对等采集节点;

若该对等采集节点满足第二预设调整条件,确定所述第一列表包括该对等采集节点所在的对等群组范围内当前负荷小于第二负荷阈值的对等采集节点;

若该对等采集节点满足第三预设调整条件,确定所述第一列表包括该对等采集节点所在的对等群组范围内当前负荷小于第三负荷阈值的对等采集节点。

在上述实施例中,定义了三个预设调整条件,定义的预设调整条件越多,调整越精细。

在一实施例中,所述方法还包括:

在该对等采集节点满足第三预设调整条件且所述第一列表为空时,查找该对等采集节点所在的对等群组的所有对等采集节点上的所有数据采集任务中优先级最低的数据采集任务,获得优先级最低的数据采集任务列表;

接收用户根据所述优先级最低的数据采集任务列表输入的需丢弃的数据采集任务;

确定该需丢弃的数据采集任务所在的对等采集节点;

丢弃该需丢弃的数据采集任务;

若需丢弃的数据采集任务不在该对等采集节点上,确定该对等采集节点中需调整的数据采集任务;将所述需调整的数据采集任务调整至当前负荷最小的对等采集节点上。

在上述实施例中,所述第一列表为空且该对等采集节点满足第三预设调整条件时如何处理的的情况,由于对等采集节点满足第三预设调整条件时,对等采集节点的当前负荷超过了第三负荷阈值,相当于对等采集节点异常,这是一定要避免的,此时,查找该对等采集节点所在的对等群组的所有对等采集节点上的所有数据采集任务中优先级最低的数据采集任务,获得优先级最低的数据采集任务列表;该优先级最低的数据采集任务列表可以通过界面的形式展示给用户,用户从该优先级最低的数据采集任务列表中选择需丢弃的数据采集任务,然后确定该需丢弃的数据采集任务所在的对等采集节点,即可丢弃该需丢弃的数据采集任务,如果需丢弃的数据采集任务在该对等采集节点上,那么该对等采集节点不再满足第三预设调整条件,不用进行调整,但是若需丢弃的数据采集任务不在该对等采集节点上,确定该对等采集节点中需调整的数据采集任务;将所述需调整的数据采集任务调整至当前负荷最小的对等采集节点上。上述确定该对等采集节点中需调整的数据采集任务的方式同样可以根据负荷和数据采集任务之间的关系,这个关系可以从配置文件中读取,上述过程还可以衍生出一个实施例,如果该优先级最低的数据采集任务列表可以通过界面的形式展示给用户,在设定时长内,用户未选择需丢弃的数据采集任务,则可以默认丢弃优先级最低的数据采集任务。

在一实施例中,所述方法还包括:

对每一对等采集节点,若该对等采集节点异常,将该对等采集节点上的数据采集任务调整至该对等采集节点所在的对等群组范围内的其他对等采集节点。

在上述实施例中,该对等采集节点异常可能是系统死机、崩溃等各类异常,那么该对等采集节点需要隔离屏蔽,需要将其上的数据采集任务调整至该对等采集节点所在的对等群组范围内的其他对等采集节点,调整方式可参考前述实施例,从而实现对对等采集节点异常的及时处理,有效的避免了在极端情况下出现连锁异常反应的情况,有效的保证对等采集节点的稳定性。

基于上述实施例,本发明提出如下一个实施例来说明负载均衡的数据采集方法的详细流程,图2为本发明实施例提出的负载均衡的数据采集方法的详细流程图,如图2所示,在一实施例中,负载均衡的数据采集方法的详细流程包括:

步骤201,确定多个对等群组,每个对等群组包括多个对等采集节点,所述多个对等采集节点用于执行同一业务的同一任务类型的多个数据采集任务;

步骤202,确定每个对等采集节点的负荷阈值,所述每个对等采集节点的负荷阈值包括第一负荷阈值、第二负荷阈值和第三负荷阈值,其中第一负荷阈值<第二负荷阈值<第三负荷阈值,转至步骤203和步骤214和步骤224;

步骤203,在获得新增数据采集任务后,确定该新增数据采集任务的任务类型和所在业务对应的对等群组;

步骤204,判断是否存在满足第一预设分配条件的对等采集节点,若存在,转至步骤205,否则转至步骤206;

步骤205,从满足第一预设分配条件的所述对等群组的所有对等采集节点中,确定当前负荷最小的对等采集节点,将新增数据采集任务分配至所述当前负荷最小的对等采集节点;

步骤206,判断是否存在满足第二预设分配条件的对等采集节点,若存在,转至步骤207,否则转至步骤208或步骤209;

步骤207,在所有对等采集节点均不满足第一预设分配条件时,从所有满足第二预设分配条件的所述对等群组的所有对等采集节点中确定当前负荷最小的对等采集节点,将新增数据采集任务分配至所述当前负荷最小的对等采集节点;

步骤208,丢弃所述新增数据采集任务;

步骤209,确定新增数据采集任务的优先级;

步骤210,获得所述对等群组的所有对等采集节点上的所有数据采集任务的优先级;

步骤211,查找所述对等群组的所有对等采集节点上的所有数据采集任务中优先级最低的数据采集任务,获得优先级最低的数据采集任务列表;

步骤212,接收用户根据所述优先级最低的数据采集任务列表输入的需丢弃的数据采集任务;

步骤213,丢弃所述需丢弃的数据采集任务,将新增数据采集任务按照任务类型分配至满足预设分配条件的对等采集节点上;

步骤214,对每一对等采集节点,若该对等采集节点满足预设调整条件,确定该对等采集节点所在的对等群组范围内能够接收数据采集任务的对等采集节点的第一列表;

步骤215,判断所述第一列表是否为空,在所述第一列表不为空时,转至步骤216,否则转至步骤219;

步骤216,从所述第一列表中查找当前负荷最小的对等采集节点;

步骤217,确定该对等采集节点中需调整的数据采集任务;

步骤218,将所述需调整的数据采集任务调整至当前负荷最小的对等采集节点上;

步骤219,在该对等采集节点满足第三预设调整条件时,查找该对等采集节点所在的对等群组的所有对等采集节点上的所有数据采集任务中优先级最低的数据采集任务,获得优先级最低的数据采集任务列表;

步骤220,接收用户根据所述优先级最低的数据采集任务列表输入的需丢弃的数据采集任务;

步骤221,确定该需丢弃的数据采集任务所在的对等采集节点;

步骤222,丢弃该需丢弃的数据采集任务;

步骤223,若需丢弃的数据采集任务不在该对等采集节点上,确定该对等采集节点中需调整的数据采集任务;将所述需调整的数据采集任务调整至当前负荷最小的对等采集节点上;

步骤224,对每一对等采集节点,若该对等采集节点异常,将该对等采集节点上的数据采集任务调整至该对等采集节点所在的对等群组范围内的其他对等采集节点。

当然,可以理解的是,上述负载均衡的数据采集方法的详细流程还可以有其他变化例,相关变化例均应落入本发明的保护范围。

综上所述,在本发明实施例提出的方法中,确定多个对等群组,每个对等群组包括多个对等采集节点,所述多个对等采集节点用于执行同一业务的同一任务类型的多个数据采集任务;确定每个对等采集节点的负荷阈值;在获得新增数据采集任务后,将新增数据采集任务按照任务类型和所在业务分配至满足预设分配条件的对等采集节点上,所述预设分配条件是根据每个对等采集节点的负荷阈值确定的;对每一对等采集节点,若该对等采集节点满足预设调整条件,在该对等采集节点所在的对等群组范围内,调整该对等采集节点上的数据采集任务,所述预设调整条件是根据该对等采集节点的负荷阈值确定的。在上述过程中,由于确定了多个对等群组,且每个对等群组中的多个对等采集节点可用于执行同一业务的同一任务类型的多个数据采集任务,在新增数据采集任务时,是按照新增数据采集对应的业务进行分配的;且后续调整数据采集任务时,都只在对等采集节点所在的对等群组范围内调整,从而避免了影响其他对等群组的数据采集,实现了可同时进行多个业务的数据采集时的负载均衡调度。另外,本发明实施例通过定义数据采集任务的优先级的方式,丢弃了用户根据优先级最低的数据采集任务列表输入的需丢弃的数据采集任务,从而对新增数据采集任务进行分配或调整其他数据采集任务,有效的避免了在极端情况下出现连锁异常反应的情况,有效的保证了对等采集节点的稳定性。

基于同样的发明构思,本发明实施例还提供了一种负载均衡的数据采集装置,如下面的实施例所述。由于这些解决问题的原理与负载均衡的数据采集方法相似,因此装置的实施可以参见方法的实施,重复之处不在赘述。

图3为本发明实施例中负载均衡的数据采集装置的示意图,如图3所示,该装置包括:

对等群组确定模块301,用于确定多个对等群组,每个对等群组包括多个对等采集节点,所述多个对等采集节点用于执行同一业务的同一任务类型的多个数据采集任务;

负荷阈值确定模块302,用于确定每个对等采集节点的负荷阈值;

分配模块303,用于在获得新增数据采集任务后,将新增数据采集任务按照任务类型和所在业务分配至满足预设分配条件的对等采集节点上,所述预设分配条件是根据每个对等采集节点的负荷阈值确定的;

调整模块304,用于对每一对等采集节点,若该对等采集节点满足预设调整条件,在该对等采集节点所在的对等群组范围内,调整该对等采集节点上的数据采集任务,所述预设调整条件是根据该对等采集节点的负荷阈值确定的。

在一实施例中,所述每个对等采集节点的负荷阈值包括第一负荷阈值、第二负荷阈值和第三负荷阈值,其中第一负荷阈值<第二负荷阈值<第三负荷阈值。

在一实施例中,所述预设分配条件包括第一预设分配条件和第二预设分配条件,其中,第一预设分配条件为对等采集节点的当前负荷未达到第一负荷阈值,第二预设分配条件为对等采集节点的当前负荷大于第一负荷阈值且小于第二负荷阈值;

分配模块303具体用于:

在获得新增数据采集任务后,确定该新增数据采集任务的任务类型和所在业务对应的对等群组;

从满足第一预设分配条件的所述对等群组的所有对等采集节点中,确定当前负荷最小的对等采集节点,将新增数据采集任务分配至所述当前负荷最小的对等采集节点;

在所有对等采集节点均不满足第一预设分配条件时,从所有满足第二预设分配条件的所述对等群组的所有对等采集节点中确定当前负荷最小的对等采集节点,将新增数据采集任务分配至所述当前负荷最小的对等采集节点;

在所有对等采集节点均不满足第一预设分配条件且不满足第二预设分配条件时,丢弃所述新增数据采集任务。

在一实施例中,所述装置还包括第一优先级处理模块305,用于:

确定新增数据采集任务的优先级;

获得所述对等群组的所有对等采集节点上的所有数据采集任务的优先级;

在所有对等采集节点均不满足第一预设分配条件且不满足第二预设分配条件时,查找所述对等群组的所有对等采集节点上的所有数据采集任务中优先级最低的数据采集任务,获得优先级最低的数据采集任务列表;

接收用户根据所述优先级最低的数据采集任务列表输入的需丢弃的数据采集任务;

丢弃所述需丢弃的数据采集任务,将新增数据采集任务按照任务类型分配至满足预设分配条件的对等采集节点上。

在一实施例中,调整模块304具体用于:

对每一对等采集节点,若该对等采集节点满足预设调整条件,确定该对等采集节点所在的对等群组范围内能够接收数据采集任务的对等采集节点的第一列表;

在所述第一列表不为空时,从所述第一列表中查找当前负荷最小的对等采集节点;

确定该对等采集节点中需调整的数据采集任务;

将所述需调整的数据采集任务调整至当前负荷最小的对等采集节点上。

在一实施例中,预设调整条件包括第一预设调整条件和第二预设调整条件,其中,第一预设调整条件为对等采集节点的当前负荷大于第一负荷阈值且小于第二负荷阈值,第二预设调整条件为对等采集节点的当前负荷大于第二负荷阈值且小于第三负荷阈值,第三预设调整条件为对等采集节点的当前负荷大于第三负荷阈值;

调整模块304具体用于:

对每一对等采集节点,若该对等采集节点满足第一预设调整条件,确定所述第一列表包括该对等采集节点所在的对等群组范围内当前负荷小于第一负荷阈值的对等采集节点;

若该对等采集节点满足第二预设调整条件,确定所述第一列表包括该对等采集节点所在的对等群组范围内当前负荷小于第二负荷阈值的对等采集节点;

若该对等采集节点满足第三预设调整条件,确定所述第一列表包括该对等采集节点所在的对等群组范围内当前负荷小于第三负荷阈值的对等采集节点。

在一实施例中,所述装置还包括第二优先级处理模块306,用于:

在该对等采集节点满足第三预设调整条件且所述第一列表为空时,查找该对等采集节点所在的对等群组的所有对等采集节点上的所有数据采集任务中优先级最低的数据采集任务,获得优先级最低的数据采集任务列表;

接收用户根据所述优先级最低的数据采集任务列表输入的需丢弃的数据采集任务;

确定该需丢弃的数据采集任务所在的对等采集节点;

丢弃该需丢弃的数据采集任务;

若需丢弃的数据采集任务不在该对等采集节点上,确定该对等采集节点中需调整的数据采集任务;将所述需调整的数据采集任务调整至当前负荷最小的对等采集节点上。

在一实施例中,所述装置还包括异常处理模块307,用于:

对每一对等采集节点,若该对等采集节点异常,将该对等采集节点上的数据采集任务调整至该对等采集节点所在的对等群组范围内的其他对等采集节点。

综上所述,在本发明实施例提出的装置中,确定多个对等群组,每个对等群组包括多个对等采集节点,所述多个对等采集节点用于执行同一业务的同一任务类型的多个数据采集任务;确定每个对等采集节点的负荷阈值;在获得新增数据采集任务后,将新增数据采集任务按照任务类型和所在业务分配至满足预设分配条件的对等采集节点上,所述预设分配条件是根据每个对等采集节点的负荷阈值确定的;对每一对等采集节点,若该对等采集节点满足预设调整条件,在该对等采集节点所在的对等群组范围内,调整该对等采集节点上的数据采集任务,所述预设调整条件是根据该对等采集节点的负荷阈值确定的。在上述过程中,由于确定了多个对等群组,且每个对等群组中的多个对等采集节点可用于执行同一业务的同一任务类型的多个数据采集任务,在新增数据采集任务时,是按照新增数据采集对应的业务进行分配的;且后续调整数据采集任务时,都只在对等采集节点所在的对等群组范围内调整,从而避免了影响其他对等群组的数据采集,实现了可同时进行多个业务的数据采集时的负载均衡调度。另外,本发明实施例通过定义数据采集任务的优先级的方式,丢弃了用户根据优先级最低的数据采集任务列表输入的需丢弃的数据采集任务,从而对新增数据采集任务进行分配或调整其他数据采集任务,有效的避免了在极端情况下出现连锁异常反应的情况,有效的保证了对等采集节点的稳定性。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1