任务处理方法和装置与流程

文档序号:16530472发布日期:2019-01-05 10:42阅读:135来源:国知局
任务处理方法和装置与流程

本申请涉及计算机技术领域,尤其涉及一种任务处理方法和装置。



背景技术:

目前,通常通过分布式系统在互联网中进行任务处理。利用分布式系统进行任务处理的过程主要为:获取待处理任务,确定分布式系统中用于处理待处理任务的目标服务器,将待处理任务发送至目标服务器,目标服务器对待处理任务进行处理。

能够理解,若采用随机的方式在分布式系统中确定用于处理待处理任务的目标服务器,并将待处理任务发送至目标服务器,则可能导致分布式系统中每个服务器处理的任务数量差别较大,进而影响分布式系统的任务处理效率,因此,需要提供一种技术方案,以在分布式系统中实现任务的精准分配,提高分布式系统的任务处理效率。



技术实现要素:

本申请实施例的目的是提供一种任务处理方法和装置,以在分布式系统中实现任务的精准分配,提高分布式系统的任务处理效率。

为达到上述目的,本申请实施例是这样实现的:

第一方面,本申请实施例提供了一种任务处理方法,包括:

获取分布式系统的待处理任务;

根据所述分布式系统对应的任务分配参数,确定所述待处理任务对应的分配标号;其中,所述分布式系统对应的任务分配参数,根据所述分布式系统对应的任务分配信息确定得到,所述任务分配信息包括:多个待选任务分配参数,以及,基于每个所述待选任务分配参数确定的,所述分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据;

根据所述待处理任务对应的分配标号,确定所述分布式系统中用于处理所述待处理任务的目标任务处理单元;

将所述待处理任务下发至所述目标任务处理单元,其中,所述目标任务处理单元用于处理所述待处理任务。

第二方面,本申请实施例提供了一种任务处理装置,包括:

任务获取单元,用于获取分布式系统的待处理任务;

第一确定单元,用于根据所述分布式系统对应的任务分配参数,确定所述待处理任务对应的分配标号;其中,所述分布式系统对应的任务分配参数,根据所述分布式系统对应的任务分配信息确定得到,所述任务分配信息包括:多个待选任务分配参数,以及,基于每个所述待选任务分配参数确定的,所述分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据;

第二确定单元,用于根据所述待处理任务对应的分配标号,确定所述分布式系统中用于处理所述待处理任务的目标任务处理单元;

任务下发单元,用于将所述待处理任务下发至所述目标任务处理单元,其中,所述目标任务处理单元用于处理所述待处理任务。

第三方面,本申请实施例提供了一种任务处理设备,包括:存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机可执行指令,所述计算机可执行指令被所述处理器执行时实现如上述第一方面所述的任务处理方法的步骤。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令被处理器执行时实现如上述第一方面所述的任务处理方法的步骤。

本申请实施例中,能够根据分布式系统对应的任务分配参数,确定待处理任务对应的分配标号,根据待处理任务对应的分配标号,确定分布式系统中用于处理待处理任务的目标任务处理单元,从而将待处理任务下发至目标任务处理单元进行处理。由于分布式系统对应的任务分配参数根据分布式系统对应的任务分配信息确定得到,且该任务分配信息包括多个待选任务分配参数,以及,基于每个待选任务分配参数确定的,分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据,因此本申请实施例中在确定分布式系统对应的任务分配参数时,考虑到了各个任务处理单元分配得到的任务数量的波动程度数据,从而通过兼顾各个任务处理单元分配得到的任务数量的波动程度数据,在分布式系统中实现任务的精准分配,提高分布式系统的任务处理效率。

附图说明

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

图1为本申请一实施例提供的任务处理方法的应用场景示意图;

图2为本申请一实施例提供的任务处理方法的流程示意图;

图3为本申请一实施例提供的待选任务分配参数与上述波动程度数据之间的对应关系的曲线示意图;

图4为本申请另一实施例提供的任务处理方法的流程示意图;

图5为本申请一实施例提供的任务处理装置的模块组成示意图;

图6为本申请一实施例提供的任务处理设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

为在分布式系统中实现任务的精准分配,提高分布式系统的任务处理效率,本申请实施例提供了一种任务处理方法和装置,下面通过实施例进行描述。

图1为本申请一实施例提供的任务处理方法的应用场景示意图,如图1所示,该场景包括任务分配服务器100和多个任务处理单元200,其中,任务分配服务器100与每个任务处理单元200通信,任务分配服务器100用于执行本申请实施例中的任务处理方法,将待处理任务分配至某一任务处理单元200以进行处理。任务处理单元200可以为任务处理进程或任务处理服务器,当任务处理单元200为任务处理服务器时,每个任务处理服务器为完全相同的服务器,具有相同的功能。

图2为本申请一实施例提供的任务处理方法的流程示意图,如图2所示,该方法包括:

步骤s202,获取分布式系统的待处理任务;

步骤s204,根据分布式系统对应的任务分配参数,确定待处理任务对应的分配标号;其中,分布式系统对应的任务分配参数,根据分布式系统对应的任务分配信息确定得到,该任务分配信息包括:多个待选任务分配参数,以及,基于每个待选任务分配参数确定的,分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据;

步骤s206,根据待处理任务对应的分配标号,确定分布式系统中用于处理待处理任务的目标任务处理单元;

步骤s208,将待处理任务下发至目标任务处理单元,其中,目标任务处理单元用于处理待处理任务。

本申请实施例中,能够根据分布式系统对应的任务分配参数,确定待处理任务对应的分配标号,根据待处理任务对应的分配标号,确定分布式系统中用于处理待处理任务的目标任务处理单元,从而将待处理任务下发至目标任务处理单元进行处理。由于分布式系统对应的任务分配参数根据分布式系统对应的任务分配信息确定得到,且该任务分配信息包括多个待选任务分配参数,以及,基于每个待选任务分配参数确定的,分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据,因此本申请实施例中在确定分布式系统对应的任务分配参数时,考虑到了各个任务处理单元分配得到的任务数量的波动程度数据,从而通过兼顾各个任务处理单元分配得到的任务数量的波动程度数据,在分布式系统中实现任务的精准分配,提高分布式系统的任务处理效率。

本申请实施例中,分布式系统的待处理任务可以是保存用户信息的任务,比如,用户通过移动终端设置用户账号等用户信息,本申请实施例中的任务分配服务器100在获取到保存用户信息的任务后,将任务下发至任务处理单元200,任务处理单元200用于根据接收到的任务保存相应的用户信息。当然,本申请实施例中的待处理任务还可以是查询用户信息的任务,更新用户信息的任务等,这里不再一一列举。

上述步骤s202中,可以从移动终端或后台服务器等设备处,获取分布式系统的待处理任务。

上述步骤s204中,根据分布式系统对应的任务分配参数,确定待处理任务对应的分配标号,可以为:

(a1)对待处理任务的任务标识进行哈希运算,得到哈希结果;

(a2)计算该哈希结果对分布式系统对应的任务分配参数取余得到的余数;

(a3)将所述余数作为所述待处理任务对应的分配标号。

具体地,获取待处理任务的任务标识,该任务标识可以为一串数字,如238920,对待处理任务的任务标识进行哈希运算,得到哈希结果,然后,计算该哈希结果对分布式系统对应的任务分配参数取余得到的余数,其中,分布式系统对应的任务分配参数也为一串数字,如5000,最后,将该余数作为待处理任务对应的分配标号。

一个例子中,获取待处理任务的任务标识238920,对该任务标识进行哈希运算得到哈希结果251。然后,计算251对分布式系统对应的任务分配参数500取余得到的余数,该余数为251,最后,将251作为待处理任务对应的分配标号。

通过该分配标号的确定过程可知,在分布式系统中,由于任务对应的分配标号为对任务分配参数取余得到的余数,因此任务对应的分配标号为自然数,其取值范围为[0,a),其中,a为分布式系统对应的任务分配参数。

上述步骤s206中,根据待处理任务对应的分配标号,确定分布式系统中用于处理待处理任务的目标任务处理单元,具体为:

(b1)获取分布式系统中,任务对应的分配标号与各个任务处理单元之间的对应关系;

(b2)根据该对应关系,确定待处理任务对应的分配标号所对应的任务处理单元;

(b3)将确定的任务处理单元,确定为分布式系统中用于处理待处理任务的目标任务处理单元。

通过前述过程可知,任务对应的分配标号为自然数,其取值范围为[0,a),其中,a为分布式系统对应的任务分配参数。本实施例中,预先存储有分布式系统中,任务对应的分配标号与各个任务处理单元之间的对应关系,该对应关系可以如下表1所示。

表1

本步骤中,首先获取上述的对应关系,然后根据该对应关系,确定待处理任务对应的分配标号所对应的任务处理单元,如待处理任务对应的分配标号为5,其对应任务处理单元1,最后,将该所对应的任务处理单元确定为分布式系统中用于处理待处理任务的目标任务处理单元。

本实施例中,任务对应的分配标号与各个任务处理单元之间的对应关系可以通过以下方式确定:

将小于分布式系统对应的任务分配参数的各个自然数,作为分布式系统中的任务对应的分配标号;

获取分布式系统中每个任务处理单元对应的单元序号;

利用一致性哈希算法,建立各个分配标号与各个单元序号之间的映射关系,根据映射关系,确定任务对应的分配标号与各个任务处理单元之间的对应关系。

由于任务对应的分配标号为自然数,其取值范围为[0,a),其中,a为分布式系统对应的任务分配参数,因此首先将小于分布式系统对应的任务分配参数的各个自然数,作为分布式系统中的任务对应的分配标号,然后获取分布式系统中每个任务处理单元对应的单元序号,该单元序号可以为预先确定好的连续序号或非连续序号,如连续序号123….,或者,非连续序号135……,最后,使用一致性哈希算法,将每个任务处理单元对应的单元序号作为一致性哈希算法的server,将任务对应的分配标号作为需要哈希的key,从而得到各个分配标号与各个单元序号之间的映射关系,并根据该映射关系,确定任务对应的分配标号与各个任务处理单元之间的对应关系。

在确定目标任务处理单元后,通过上述步骤s208,将待处理任务下发至目标任务处理单元,以使目标任务处理单元处理待处理任务。

以上描述了已知分布式系统对应的任务分配参数后,分配待处理任务的具体过程,下面详细介绍如何确定分布式系统对应的任务分配参数。

本实施例中,分布式系统对应的任务分配参数,根据分布式系统对应的任务分配信息确定得到,该任务分配信息包括:多个待选任务分配参数,以及,基于每个待选任务分配参数确定的,分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据。

具体地,首先确定分布式系统对应的待选任务分配参数的值,本实施例中,根据分布式系统中的任务处理单元的数量以及预设的待选任务分配参数取值规则,确定分布式系统对应的待选任务分配参数的取值范围,将该取值范围内的值,确定为分布式系统对应的待选任务分配参数的值。

其中,预设的待选任务分配参数取值规则可以为,待选任务分配参数的最小值为1,待选任务分配参数的最大值为分布式系统中的任务处理单元的数量的指定倍数,该指定倍数可以为100倍或50倍。该指定倍数可以根据经验确定。

比如,分布式系统中的任务处理单元的数量为50个,预设的待选任务分配参数取值规则为:待选任务分配参数的最小值为1,待选任务分配参数的最大值为分布式系统中的任务处理单元的数量的100倍,则根据分布式系统中的任务处理单元的数量以及预设的待选任务分配参数取值规则,确定分布式系统对应的待选任务分配参数的取值范围为[1,5000],并将该取值范围内的值,确定为分布式系统对应的待选任务分配参数的值。

在确定分布式系统对应的待选任务分配参数的值后,确定基于每个待选任务分配参数的,分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据,其具体过程为:

(c1)针对每个待选任务分配参数,将小于该待选任务分配参数的各个自然数作为基于该待选任务分配参数的,分布式系统中的任务对应的可能分配标号;

(c2)获取分布式系统中每个任务处理单元对应的单元序号;

(c3)利用一致性哈希算法,建立基于该待选任务分配参数的,各个可能分配标号与各个单元序号之间的映射关系,根据该映射关系,确定基于该待选任务分配参数的,每个单元序号对应的可能分配标号的数量;

(c4)将基于该待选任务分配参数的,每个单元序号对应的可能分配标号的数量,作为基于该待选任务分配参数的,每个任务处理单元分配得到的任务数量;

(c5)根据基于该待选任务分配参数的,每个任务处理单元分配得到的任务数量,确定基于该待选任务分配参数的,各个任务处理单元分配得到的任务数量的波动程度数据。

由于任务对应的分配标号为自然数,其取值范围为[0,a),其中,a为分布式系统对应的任务分配参数,因此上述(c1)中,针对每个待选任务分配参数,将小于该待选任务分配参数的各个自然数作为基于该待选任务分配参数的,分布式系统中的任务对应的可能分配标号。

然后上述动作(c2)中,获取分布式系统中每个任务处理单元对应的单元序号,该单元序号可以为预先确定好的连续序号或非连续序号,如连续序号123….,或者,非连续序号135……。上述动作(c3)中,使用一致性哈希算法,将每个任务处理单元对应的单元序号作为一致性哈希算法的server,将各个可能分配标号作为需要哈希的key,从而得到基于该待选任务分配参数的,各个可能分配标号与各个单元序号之间的映射关系。

该映射关系举例为,单元序号1对应可能分配标号1、3、5、7、9,单元序号2对应可能分配标号0、2、4。上述动作(c3)中,可以根据该映射关系,确定基于该待选任务分配参数的,每个单元序号对应的可能分配标号的数量,比如续接上例,单元序号1对应5个可能分配标号,单元序号2对应3个可能分配标号。

由于对于分布式系统而言,其处理的任务量可以看做无穷多,因此在确定每个任务对应的分配标号时,可以认为每个分配标号对应的任务数量是相等的,因此上述动作(c4)中,将基于该待选任务分配参数的,每个单元序号对应的可能分配标号的数量,作为基于该待选任务分配参数的,每个任务处理单元分配得到的任务数量,以模拟得到基于该待选任务分配参数的,每个任务处理单元分配得到的任务数量。进而通过动作(c5),根据基于该待选任务分配参数的,每个任务处理单元分配得到的任务数量,确定基于该待选任务分配参数的,各个任务处理单元分配得到的任务数量的波动程度数据。

比如一个例子中,基于某个待选任务分配参数,单元序号1对应5个可能分配标号,单元序号2对应3个可能分配标号,单元序号3对应4个可能分配标号,则动作(c4)中,确定基于该待选任务分配参数,单元序号1的任务处理单元分配得到5个任务,单元序号2的任务处理单元分配得到3个任务,单元序号3的任务处理单元分配得到4个任务。进而通过动作(c5),根据各个任务处理单元分配得到的任务数量,确定基于该待选任务分配参数的,各个任务处理单元分配得到的任务数量的波动程度数据。

上述动作(c5)中,根据基于该待选任务分配参数的,每个任务处理单元分配得到的任务数量,确定基于该待选任务分配参数的,各个任务处理单元分配得到的任务数量的波动程度数据,具体为:

(d1)将基于该待选任务分配参数的,各个任务处理单元分配得到的任务数量的方差或标准差,作为基于该待选任务分配参数的,各个任务处理单元分配得到的任务数量的波动程度数据;

或者,

(d2)对于基于该待选任务分配参数的,每个任务处理单元分配得到的任务数量,计算该任务数量与基于该待选任务分配参数的,各个任务处理单元分配得到的任务数量的总和的比值;将各个任务处理单元各自对应的该比值的方差或标准差,作为基于该待选任务分配参数的,各个任务处理单元分配得到的任务数量的波动程度数据。

比如,一个例子中,单元序号1的任务处理单元分配得到5个任务,单元序号2的任务处理单元分配得到3个任务,单元序号3的任务处理单元分配得到4个任务,则动作(d1)中,将各个任务处理单元分配得到的任务数量的方差或标准差,作为各个任务处理单元分配得到的任务数量的波动程度数据。或者,以上例为例,动作(d2)中,先计算各个任务处理单元分配得到的任务数量的总和5+3+4=12,然后计算比值5/12、3/12、4/12,将这三个比值的方差或标准差,作为各个任务处理单元分配得到的任务数量的波动程度数据。

上述计算比值的过程可以看做任务数量归一化的过程。能够理解,各个任务分配得到的任务数量的总和,即为该待选任务分配参数的值。当待选任务分配参数的值很小时,为避免直接计算任务数量的方差或标准差得到的值过小,导致每个待选任务分配参数对应的上述波动程度数据在数量级上存在不一致、无法比照的问题,优选采用上述动作(d2),首先对任务数量进行归一化处理,再计算波动程度数据。

一个具体例子中,分布式系统中的任务处理单元的数量为50个,预设的待选任务分配参数取值规则为:待选任务分配参数的最小值为1,待选任务分配参数的最大值为分布式系统中的任务处理单元的数量的100倍,则根据分布式系统中的任务处理单元的数量以及预设的待选任务分配参数取值规则,确定分布式系统对应的待选任务分配参数的取值范围为[1,5000],并将该取值范围内的值,确定为分布式系统对应的待选任务分配参数的值。

对于每个待选任务分配参数,比如,对于待选任务分配参数50,将0-49作为基于该待选任务分配参数的,分布式系统中的任务对应的可能分配标号,并获取分布式系统中每个任务处理单元对应的单元序号,使用一致性哈希算法,将每个任务处理单元对应的单元序号作为一致性哈希算法的server,将各个可能分配标号作为需要哈希的key,从而得到基于该待选任务分配参50数的,各个可能分配标号与各个单元序号之间的映射关系,并根据该映射关系,确定基于该待选任务分配参数50的,每个单元序号对应的可能分配标号的数量。

将基于该待选任务分配参数50的,每个单元序号对应的可能分配标号的数量,作为基于该待选任务分配参数50的,每个任务处理单元分配得到的任务数量。对于每个任务处理单元分配得到的任务数量,计算该任务数量与各个任务处理单元分配得到的任务数量的总和(即50)的比值,将各个任务处理单元各自对应的该比值的方差,作为基于该待选任务分配参数50的,各个任务处理单元分配得到的任务数量的波动程度数据。

依照这种方法,得到待选任务分配参数的取值范围为[1,5000]的情况下,基于每个待选任务分配参数的,各个任务处理单元分配得到的任务数量的波动程度数据,从而得到分布式系统对应的任务分配信息。

本实施例中,根据分布式系统对应的任务分配信息,确定分布式系统对应的任务分配参数,具体为:

(e1)根据多个待选任务分配参数,以及,基于每个待选任务分配参数确定的各个上述波动程度数据,生成用于表示待选任务分配参数与上述波动程度数据之间的对应关系的曲线;

(e2)根据该曲线的拐点所对应的待选任务分配参数,确定分布式系统对应的任务分配参数。

一个情况下,若该曲线的拐点所对应的待选任务分配参数为整数,则直接将该曲线的拐点所对应的待选任务分配参数确定为分布式系统对应的任务分配参数,若该曲线的拐点所对应的待选任务分配参数不为整数,则采用四舍五入的方式确定分布式系统对应的任务分配参数,比如,该曲线的拐点所对应的待选任务分配参数为600.4,则确定分布式系统对应的任务分配参数为600,若该曲线的拐点所对应的待选任务分配参数为600.8,则确定分布式系统对应的任务分配参数为601。

图3为本申请一实施例提供的待选任务分配参数与上述波动程度数据之间的对应关系的曲线示意图,该曲线以分布式系统中的任务处理单元的数量为50个,分布式系统对应的待选任务分配参数的取值范围为[1,5000]为例生成得到,该曲线中,待选任务分配参数为x轴,上述波动程度数据为y轴。通过上述动作(e1),能够生成如图3所示的曲线,通过上述动作(e2),根据该曲线的拐点所对应的待选任务分配参数,确定分布式系统对应的任务分配参数。

通过图3能够看出,拐点处为波动程度数据变化相对平缓的位置,在这个位置处,即使再增大待选任务分配参数的值,也不会另波动程度数据明显减少,因此通过根据该曲线的拐点所对应的待选任务分配参数,确定分布式系统对应的任务分配参数,能够保证各个任务处理单元分配得到的任务数量基本一致,使得分布式系统中各个任务处理单元的负载较为均衡,提高分布式系统的任务处理效率和运行效率。

可见,本申请实施例中在确定分布式系统对应的任务分配参数时,具有以下优点:

(1)只需生成用于表示待选任务分配参数与上述波动程度数据之间的对应关系的曲线,根据该曲线的拐点所对应的待选任务分配参数,确定分布式系统对应的任务分配参数即可,具有操作简单、适用范围广、适用型强的优点;

(2)通过曲线图直观简单的表示待选任务分配参数和上述波动程度数据之间的对应关系,通过确定拐点的方式简单快速的确定分布式系统对应的任务分配参数,能够使问题简单化,使任务分配参数的确定过程直观明了;

(3)确定得到的任务分配参数能够保证分布式系统中各个任务处理单元分配得到的任务数量基本一致,使得分布式系统中各个任务处理单元的负载较为均衡,提高分布式系统的任务处理效率和运行效率。

图4为本申请另一实施例提供的任务处理方法的流程示意图,该方法可以由上述的任务分配服务器执行,如图4所示,该方法包括:

步骤s402,确定分布式系统对应的待选任务分配参数的值。

具体地,根据分布式系统中的任务处理单元的数量以及预设的待选任务分配参数取值规则,确定分布式系统对应的待选任务分配参数的取值范围,将该取值范围内的值,确定为分布式系统对应的待选任务分配参数的值。

步骤s404,针对每个待选任务分配参数,确定基于该待选任务分配参数的,分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据。

该过程可以参考前述的动作(c1)至(c5),这里不再重复。

步骤s406,根据基于每个待选任务分配参数的,各个任务处理单元分配得到的任务数量的波动程度数据,确定分布式系统对应的任务分配参数。

具体地,根据每个待选任务分配参数,以及,基于每个待选任务分配参数确定的各个上述波动程度数据,生成用于表示待选任务分配参数与上述波动程度数据之间的对应关系的曲线,根据该曲线的拐点所对应的待选任务分配参数,确定分布式系统对应的任务分配参数,比如,将该曲线的拐点所对应的待选任务分配参数,确定为分布式系统对应的任务分配参数。

步骤s408,在获取分布式系统的待处理任务后,根据分布式系统对应的任务分配参数,确定待处理任务对应的分配标号。

步骤s410,根据待处理任务对应的分配标号,确定分布式系统中用于处理待处理任务的目标任务处理单元。

步骤s412,将待处理任务下发至目标任务处理单元,其中,目标任务处理单元用于处理待处理任务。

通过图4中的方法,能够保证分布式系统中各个任务处理单元分配得到的任务数量基本一致,使得分布式系统中各个任务处理单元的负载较为均衡,提高分布式系统的任务处理效率和运行效率。

进一步地,本申请实施例还提供了一种任务处理装置,用以执行上述的任务处理方法,图5为本申请一实施例提供的任务处理装置的模块组成示意图,如图5所示,该装置包括:

任务获取单元51,用于获取分布式系统的待处理任务;

第一确定单元52,用于根据所述分布式系统对应的任务分配参数,确定所述待处理任务对应的分配标号;其中,所述分布式系统对应的任务分配参数,根据所述分布式系统对应的任务分配信息确定得到,所述任务分配信息包括:多个待选任务分配参数,以及,基于每个所述待选任务分配参数确定的,所述分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据;

第二确定单元53,用于根据所述待处理任务对应的分配标号,确定所述分布式系统中用于处理所述待处理任务的目标任务处理单元;

任务下发单元54,用于将所述待处理任务下发至所述目标任务处理单元,其中,所述目标任务处理单元用于处理所述待处理任务。

可选地,所述第一确定单元52具体用于:

对所述待处理任务的任务标识进行哈希运算,得到哈希结果;

计算所述哈希结果对所述分布式系统对应的任务分配参数取余得到的余数;

将所述余数作为所述待处理任务对应的分配标号。

可选地,所述第二确定单元53具体用于:

获取所述分布式系统中,任务对应的分配标号与各个所述任务处理单元之间的对应关系;

根据所述对应关系,确定所述待处理任务对应的分配标号所对应的所述任务处理单元;

将确定的所述任务处理单元,确定为所述分布式系统中用于处理所述待处理任务的目标任务处理单元。

可选地,还包括参数确定单元,用于:

根据所述多个待选任务分配参数,以及,基于每个所述待选任务分配参数确定的各个所述波动程度数据,生成用于表示所述待选任务分配参数与所述波动程度数据之间的对应关系的曲线;

根据所述曲线的拐点所对应的待选任务分配参数,确定所述分布式系统对应的任务分配参数。

可选地,还包括取值确定单元,用于:

根据所述分布式系统中的任务处理单元的数量以及预设的待选任务分配参数取值规则,确定所述分布式系统对应的待选任务分配参数的取值范围;

将所述取值范围内的值,确定为所述分布式系统对应的待选任务分配参数的值。

可选地,还包括波动确定单元,用于:

针对每个所述待选任务分配参数,将小于该待选任务分配参数的各个自然数作为基于该待选任务分配参数的,所述分布式系统中的任务对应的可能分配标号;

获取所述分布式系统中每个所述任务处理单元对应的单元序号;

利用一致性哈希算法,建立基于该待选任务分配参数的,各个所述可能分配标号与各个所述单元序号之间的映射关系,根据所述映射关系,确定基于该待选任务分配参数的,每个所述单元序号对应的可能分配标号的数量;

将基于该待选任务分配参数的,每个所述单元序号对应的可能分配标号的数量,作为基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量;

根据基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量,确定基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据。

可选地,所述波动确定单元具体用于:

将基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的方差或标准差,作为基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据;

或者,

对于基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量,计算该任务数量与基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的总和的比值;将各个所述任务处理单元各自对应的所述比值的方差或标准差,作为基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据。

本申请实施例中,能够根据分布式系统对应的任务分配参数,确定待处理任务对应的分配标号,根据待处理任务对应的分配标号,确定分布式系统中用于处理待处理任务的目标任务处理单元,从而将待处理任务下发至目标任务处理单元进行处理。由于分布式系统对应的任务分配参数根据分布式系统对应的任务分配信息确定得到,且该任务分配信息包括多个待选任务分配参数,以及,基于每个待选任务分配参数确定的,分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据,因此本申请实施例中在确定分布式系统对应的任务分配参数时,考虑到了各个任务处理单元分配得到的任务数量的波动程度数据,从而通过兼顾各个任务处理单元分配得到的任务数量的波动程度数据,在分布式系统中实现任务的精准分配,提高分布式系统的任务处理效率。

本申请实施例还提供了一种任务处理设备,图6为本申请一实施例提供的任务处理设备的结构示意图。如图6所示,任务处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器701和存储器702,存储器702中可以存储有一个或一个以上存储应用程序或数据。其中,存储器702可以是短暂存储或持久存储。存储在存储器702的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对任务处理设备中的一系列计算机可执行指令。更进一步地,处理器701可以设置为与存储器702通信,在任务处理设备上执行存储器702中的一系列计算机可执行指令。任务处理设备还可以包括一个或一个以上电源703,一个或一个以上有线或无线网络接口704,一个或一个以上输入输出接口705,一个或一个以上键盘706等。

在一个具体的实施例中,任务处理设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机可执行指令,所述计算机可执行指令被所述处理器执行时实现以下流程:

获取分布式系统的待处理任务;

根据所述分布式系统对应的任务分配参数,确定所述待处理任务对应的分配标号;其中,所述分布式系统对应的任务分配参数,根据所述分布式系统对应的任务分配信息确定得到,所述任务分配信息包括:多个待选任务分配参数,以及,基于每个所述待选任务分配参数确定的,所述分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据;

根据所述待处理任务对应的分配标号,确定所述分布式系统中用于处理所述待处理任务的目标任务处理单元;

将所述待处理任务下发至所述目标任务处理单元,其中,所述目标任务处理单元用于处理所述待处理任务。

可选地,所述计算机可执行指令被所述处理器执行时,根据所述分布式系统对应的任务分配参数,确定所述待处理任务对应的分配标号,包括:

对所述待处理任务的任务标识进行哈希运算,得到哈希结果;

计算所述哈希结果对所述分布式系统对应的任务分配参数取余得到的余数;

将所述余数作为所述待处理任务对应的分配标号。

可选地,所述计算机可执行指令被所述处理器执行时,根据所述待处理任务对应的分配标号,确定所述分布式系统中用于处理所述待处理任务的目标任务处理单元,包括:

获取所述分布式系统中,任务对应的分配标号与各个所述任务处理单元之间的对应关系;

根据所述对应关系,确定所述待处理任务对应的分配标号所对应的所述任务处理单元;

将确定的所述任务处理单元,确定为所述分布式系统中用于处理所述待处理任务的目标任务处理单元。

可选地,所述计算机可执行指令被所述处理器执行时,还包括:

根据所述多个待选任务分配参数,以及,基于每个所述待选任务分配参数确定的各个所述波动程度数据,生成用于表示所述待选任务分配参数与所述波动程度数据之间的对应关系的曲线;

根据所述曲线的拐点所对应的待选任务分配参数,确定所述分布式系统对应的任务分配参数。

可选地,所述计算机可执行指令被所述处理器执行时,还包括:

根据所述分布式系统中的任务处理单元的数量以及预设的待选任务分配参数取值规则,确定所述分布式系统对应的待选任务分配参数的取值范围;

将所述取值范围内的值,确定为所述分布式系统对应的待选任务分配参数的值。

可选地,所述计算机可执行指令被所述处理器执行时,还包括:

针对每个所述待选任务分配参数,将小于该待选任务分配参数的各个自然数作为基于该待选任务分配参数的,所述分布式系统中的任务对应的可能分配标号;

获取所述分布式系统中每个所述任务处理单元对应的单元序号;

利用一致性哈希算法,建立基于该待选任务分配参数的,各个所述可能分配标号与各个所述单元序号之间的映射关系,根据所述映射关系,确定基于该待选任务分配参数的,每个所述单元序号对应的可能分配标号的数量;

将基于该待选任务分配参数的,每个所述单元序号对应的可能分配标号的数量,作为基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量;

根据基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量,确定基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据。

可选地,所述计算机可执行指令被所述处理器执行时,根据基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量,确定基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据,包括:

将基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的方差或标准差,作为基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据;

或者,

对于基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量,计算该任务数量与基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的总和的比值;将各个所述任务处理单元各自对应的所述比值的方差或标准差,作为基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据。

本申请实施例中,能够根据分布式系统对应的任务分配参数,确定待处理任务对应的分配标号,根据待处理任务对应的分配标号,确定分布式系统中用于处理待处理任务的目标任务处理单元,从而将待处理任务下发至目标任务处理单元进行处理。由于分布式系统对应的任务分配参数根据分布式系统对应的任务分配信息确定得到,且该任务分配信息包括多个待选任务分配参数,以及,基于每个待选任务分配参数确定的,分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据,因此本申请实施例中在确定分布式系统对应的任务分配参数时,考虑到了各个任务处理单元分配得到的任务数量的波动程度数据,从而通过兼顾各个任务处理单元分配得到的任务数量的波动程度数据,在分布式系统中实现任务的精准分配,提高分布式系统的任务处理效率。

进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令被处理器执行时实现以下流程:

获取分布式系统的待处理任务;

根据所述分布式系统对应的任务分配参数,确定所述待处理任务对应的分配标号;其中,所述分布式系统对应的任务分配参数,根据所述分布式系统对应的任务分配信息确定得到,所述任务分配信息包括:多个待选任务分配参数,以及,基于每个所述待选任务分配参数确定的,所述分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据;

根据所述待处理任务对应的分配标号,确定所述分布式系统中用于处理所述待处理任务的目标任务处理单元;

将所述待处理任务下发至所述目标任务处理单元,其中,所述目标任务处理单元用于处理所述待处理任务。

可选地,所述计算机可执行指令被处理器执行时,根据所述分布式系统对应的任务分配参数,确定所述待处理任务对应的分配标号,包括:

对所述待处理任务的任务标识进行哈希运算,得到哈希结果;

计算所述哈希结果对所述分布式系统对应的任务分配参数取余得到的余数;

将所述余数作为所述待处理任务对应的分配标号。

可选地,所述计算机可执行指令被处理器执行时,根据所述待处理任务对应的分配标号,确定所述分布式系统中用于处理所述待处理任务的目标任务处理单元,包括:

获取所述分布式系统中,任务对应的分配标号与各个所述任务处理单元之间的对应关系;

根据所述对应关系,确定所述待处理任务对应的分配标号所对应的所述任务处理单元;

将确定的所述任务处理单元,确定为所述分布式系统中用于处理所述待处理任务的目标任务处理单元。

可选地,所述计算机可执行指令被处理器执行时,还包括:

根据所述多个待选任务分配参数,以及,基于每个所述待选任务分配参数确定的各个所述波动程度数据,生成用于表示所述待选任务分配参数与所述波动程度数据之间的对应关系的曲线;

根据所述曲线的拐点所对应的待选任务分配参数,确定所述分布式系统对应的任务分配参数。

可选地,所述计算机可执行指令被处理器执行时,还包括:

根据所述分布式系统中的任务处理单元的数量以及预设的待选任务分配参数取值规则,确定所述分布式系统对应的待选任务分配参数的取值范围;

将所述取值范围内的值,确定为所述分布式系统对应的待选任务分配参数的值。

可选地,所述计算机可执行指令被处理器执行时,还包括:

针对每个所述待选任务分配参数,将小于该待选任务分配参数的各个自然数作为基于该待选任务分配参数的,所述分布式系统中的任务对应的可能分配标号;

获取所述分布式系统中每个所述任务处理单元对应的单元序号;

利用一致性哈希算法,建立基于该待选任务分配参数的,各个所述可能分配标号与各个所述单元序号之间的映射关系,根据所述映射关系,确定基于该待选任务分配参数的,每个所述单元序号对应的可能分配标号的数量;

将基于该待选任务分配参数的,每个所述单元序号对应的可能分配标号的数量,作为基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量;

根据基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量,确定基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据。

可选地,所述计算机可执行指令被处理器执行时,根据基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量,确定基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据,包括:

将基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的方差或标准差,作为基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据;

或者,

对于基于该待选任务分配参数的,每个所述任务处理单元分配得到的任务数量,计算该任务数量与基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的总和的比值;将各个所述任务处理单元各自对应的所述比值的方差或标准差,作为基于该待选任务分配参数的,各个所述任务处理单元分配得到的任务数量的波动程度数据。

本申请实施例中,能够根据分布式系统对应的任务分配参数,确定待处理任务对应的分配标号,根据待处理任务对应的分配标号,确定分布式系统中用于处理待处理任务的目标任务处理单元,从而将待处理任务下发至目标任务处理单元进行处理。由于分布式系统对应的任务分配参数根据分布式系统对应的任务分配信息确定得到,且该任务分配信息包括多个待选任务分配参数,以及,基于每个待选任务分配参数确定的,分布式系统中各个任务处理单元分配得到的任务数量的波动程度数据,因此本申请实施例中在确定分布式系统对应的任务分配参数时,考虑到了各个任务处理单元分配得到的任务数量的波动程度数据,从而通过兼顾各个任务处理单元分配得到的任务数量的波动程度数据,在分布式系统中实现任务的精准分配,提高分布式系统的任务处理效率。

其中,所述的计算机可读存储介质包括只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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