任务处理方法、装置、调度服务器及介质与流程

文档序号:21847520发布日期:2020-08-14 17:13阅读:104来源:国知局
任务处理方法、装置、调度服务器及介质与流程
本发明涉及计算机
技术领域
,尤其涉及一种任务处理方法、装置、调度服务器及介质。
背景技术
:随着网络技术的发展以及互联网用户数量的不断增长,应用的后台服务器往往会接收到用户发送的批量任务,采用单个服务器对批量任务进行处理会导致处理效率低下,为了提升针对批量任务的处理效率,当前多采用服务器集群对批量任务进行处理,其中,服务器集群中包括多个执行服务器,每个执行服务器都可以对任务进行处理。现有技术中,采用服务器集群对任务进行处理时,往往是用于任务分配的调度服务器在接收到一个任务后,立即将该任务发送至适配的执行服务器,使得执行服务器对任务进行处理,然而,采用上述方式,针对n个任务,则调度服务器需要建立n个线程发送该n个任务,对调度服务器的消耗较高,且发送n次也需占用大量的发送时长,执行服务器一次也只能接收到一个待处理任务,而剩余大量的任务处理空间,导致单个执行服务器的性能无法得到充分发挥,任务处理效率低。技术实现要素:本发明实施例提供了一种任务处理方法、装置、调度服务器及介质,可以对基于执行服务器的运行状态对任务进行合并处理后发送至执行服务器,提升针对任务处理的效率。第一方面,本发明实施例提供了一种任务处理方法,所述方法包括:接收终端发送的n个待处理任务,并确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量,所述状态信息包括处理效率和剩余负载量,所述n为正整数;根据所述每个执行服务器的状态信息从所述服务器集群中筛选出第一执行服务器,并确定所述第一执行服务器的第一剩余负载量;根据所述第一剩余负载量从所述n个待处理任务中筛选出m个第一待处理任务,所述m个第一待处理任务的任务量的和值与所述第一剩余负载量之间的差值小于预设阈值,所述m为小于或等于n的正整数;对所述m个第一待处理任务进行聚合处理,得到第一待处理任务集合;将所述第一待处理任务集合发送至所述第一执行服务器,以使得所述第一执行服务器对所述第一待处理任务集合中的m个第一待处理任务进行处理。第二方面,本发明实施例提供了一种任务处理装置,所述装置包括:接收模块,用于接收终端发送的n个待处理任务;确定模块,用于确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量,所述状态信息包括处理效率和剩余负载量,所述n为正整数;筛选模块,用于根据所述每个执行服务器的状态信息从所述服务器集群中筛选出第一执行服务器;所述确定模块,还用于确定所述第一执行服务器的第一剩余负载量;所述筛选模块,还用于根据所述第一剩余负载量从所述n个待处理任务中筛选出m个第一待处理任务,所述m个第一待处理任务的任务量的和值与所述第一剩余负载量之间的差值小于预设阈值,所述m为小于或等于n的正整数;处理模块,用于对所述m个第一待处理任务进行聚合处理,得到第一待处理任务集合;发送模块,用于将所述第一待处理任务集合发送至所述第一执行服务器,以使得所述第一执行服务器对所述第一待处理任务集合中的m个第一待处理任务进行处理。第三方面,本发明实施例提供了一种调度服务器,包括处理器、输入接口、输出接口和存储器,所述处理器、输入接口、输出接口和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行第一方面所述的方法。第四方面,本发明实施例提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行第一方面所述的方法。本发明实施例中,调度服务器在接收到待处理任务时,以执行服务器的处理效率和剩余负载量为参考因素选取该执行服务器需要处理的待处理任务,使得执行服务器可以尽可能饱和的处理待处理任务,充分发挥了执行服务器的性能,提升了服务器对待处理任务的处理效率。附图说明为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例提供的一种任务处理系统的结构示意图;图2是本发明实施例提供的另一种任务处理方法的流程示意图;图3是本发明实施例提供的另一种任务处理方法的流程示意图;图4是本发明实施例提供的一种任务处理装置的结构示意图;图5是本发明实施例提供的一种调度服务器的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。请参见图1,为本发明实施例提供一种任务处理系统,该任务处理系统包括:调度服务器,与调度服务器相连接的至少一个终端,以及与调度服务器相连接的服务器集群,该服务器集群中包括至少一个执行服务器。其中,终端可包括但不限于:手机、平板电脑、电脑等,用于与用户进行交互,例如接收用户上传的待处理任务;以及用于与调度服务器进行交互,例如将待处理任务发送至调度服务器以请求获得任务处理服务等等。调度服务器用于接收终端发送的待处理任务,并将待处理任务分配各个执行服务器,具体可以接收终端发送的n个待处理任务,并确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量,调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器,并确定第一执行服务器的第一剩余负载量,状态信息包括处理效率和剩余负载量,调度服务器根据第一剩余负载量从所述n个待处理任务中筛选出m个第一待处理任务,并对m个第一待处理任务进行聚合处理,得到第一待处理任务集合,调度服务器将第一待处理任务集合发送至所述第一执行服务器,以使得所述第一执行服务器对所述第一待处理任务集合中的m个第一待处理任务进行处理。通过上述方式,在接收到待处理任务时,调度服务器以执行服务器的处理效率和剩余负载量为参考因素选取该执行服务器需要处理的待处理任务,使得执行服务器可以尽可能饱和的处理待处理任务,充分发挥了执行服务器的性能,提升了服务器对待处理任务的处理效率。基于上述任务处理系统的实施例的描述,本发明实施例提供一种任务处理方法,该方法可以应用于图1所示的任务处理系统中,具体可以由图1所示的调度服务器执行。请参见图2,该任务处理过程可包括以下步骤s201-s207:s201、调度服务器接收终端发送的n个待处理任务,并确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量。本发明实施例中,n个待处理任务可以由用户通过终端进行输入,终端检测到用户输入的待处理任务之后,将n个待处理任务发送至调度服务器,调度服务器对终端发送的n个待处理任务进行接收。其中,n个待处理任务可以为同一终端进行发送n个待处理任务,或者为调度服务器在某一时间段接收到的不同终端发送的n个待处理任务。调度服务器接收到n个待处理任务之后,将确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量。其中,任务量具体可以为服务器处理待处理任务时需占用的内存大小,如100兆、200兆等,待处理任务的任务量可以由终端在发送待处理任务时一并发送,或者,由服务器对待处理任务进行检测,确定待处理任务的任务量。状态信息包括处理效率和剩余负载量,处理效率用于体现执行服务器处理性能,具体可以如每秒处理100兆的任务、每秒处理200兆的任务等,不同的执行服务器因硬件设备不同或当前处理任务的数量不同可以体现不同的处理效率,剩余负载量具体可以为执行服务器剩余的内存量,如500兆、1000兆等。具体的,调度服务器可以管理及维护一个剩余负载表,该剩余负载表如下表一所示:表一:剩余负载表执行服务器剩余负载量(兆)执行服务器1500执行服务器2300……执行服务器n200如上表一所示,剩余负载表记录了服务器集群中各个执行服务器的剩余负载量,在一种实现方式中,由各个执行服务器可定时(每隔2秒、每隔5秒等)上报各自的剩余负载量,由调度服务器判断各执行服务器的剩余负载量是否发生变化,若发生变化则根据上报的数据对上述表一进行实时更新;在另一种实现方式中,当服务器集群中的各执行服务器自检发现自己的剩余负载量发生变化时,将变化后的剩余负载量上报至调度服务器,由调度服务器根据上报的数据对上述表一进行实时更新。调度服务器可以从表一中获取到每个执行服务器的剩余负载量。s202、调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器,并确定第一执行服务器的第一剩余负载量。本发明实施例中,调度服务器确定每个待处理任务对应的任务量以及每个执行服务器的状态信息之后,将根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器,并确定第一执行服务器的第一剩余负载量。在一种实现方式中,调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器的具体方式可以为,调度服务器确定服务器集群中每个执行服务器的状态信息中的处理效率,并将服务器集群中处理效率最高的执行服务器确定为第一执行服务器。例如,服务器集群中包括执行服务器1、执行服务器2和执行服务器3,执行服务器1的处理效率为每秒处理300兆的任务,执行服务器2的处理效率为每秒处理200兆的任务,执行服务器3的处理效率为每秒处理100兆的任务,则调度服务器将执行服务器1确定为第一执行服务器。在一种实现方式中,调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器的具体方式也可以为,调度服务器确定服务器集群中每个执行服务器的状态信息中的剩余负载量,并将服务器集群中剩余负载量最大的执行服务器确定为第一执行服务器。例如,服务器集群中包括执行服务器1、执行服务器2和执行服务器3,执行服务器1的剩余负载量为500兆,执行服务器2的剩余负载量为300兆,执行服务器3的剩余负载量为200兆,则调度服务器将执行服务器1确定为第一执行服务器。在一种实现方式中,调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器的具体方式也可以为,调度服务器根据处理效率与权重的对应关系确定服务器集群中每个执行服务器的处理效率对应的第一权重;以及,根据剩余负载量与权重的对应关系确定服务器集群中每个执行服务器的剩余负载量对应的第二权重;根据每个执行服务器的第一权重和第二权重确定每个执行服务器对应的目标权重,并将目标权重最高的执行服务器确定为第一执行服务器,每个执行服务器对应的目标权重为每个执行服务器对应的第一权重与第二权重的和值。其中,处理效率与权重的对应关系,以及剩余负载量与权重的对应关系具体可以由研发人员预先设定。例如,服务器集群中包括执行服务器1和执行服务器2,执行服务器1的处理效率为每秒处理300兆的任务,对应的第一权重为3,执行服务器1的剩余负载量为500兆,对应的第二权重为5,则执行服务器1对应的目标权重为8,执行服务器2的处理效率为每秒处理200兆的任务,对应的第一权重为2,执行服务器1的剩余负载量为300兆,对应的第二权重为3,则执行服务器2对应的目标权重为5,调度服务器将服务器1确定为第一执行服务器。进一步的,调度服务器确定第一执行服务器之后,将确定第一执行服务器对应的第一剩余负载量。s203、调度服务器根据第一剩余负载量从n个待处理任务中筛选出m个第一待处理任务。本发明实施例中,调度服务器确定第一执行服务器对应的第一剩余负载量之后,将根据第一剩余负载量从n个待处理任务中筛选出m个第一待处理任务。若第一剩余负载量大于或等于该n个待处理任务对应的任务量的和值,则调度服务器直接将该n个待处理任务确定为该m个第一待处理任务,若第一剩余负载量小于该n个待处理任务对应的任务量的和值,则调度服务器根据第一剩余负载量从n个待处理任务中筛选出m个第一待处理任务,其中,m个第一待处理任务的任务量的和值与第一剩余负载量之间的差值小于预设阈值,m为小于或等于n的正整数,和值与第一剩余负载量之间的差值的具体计算方式为第一剩余负载量减去和值,且差值需为整数。在一种实现方式中,调度服务器根据第一剩余负载量从n个待处理任务中筛选出m个第一待处理任务的具体方式可以为,调度服务器将n个待处理任务进行随机组合,得到多个待处理任务组合,并确定每个待处理任务组合中包括的待处理任务的任务量的和值,并计算第一剩余负载量与每个和值之间的差值,在差值为正数的情况下,若存在差值小于预设阈值的组合,则调度服务器确定出与第一剩余负载量之间的差值最小的和值对应的待处理任务组合,并将该待处理任务组合中的各个待处理任务确定为该m个第一待处理任务。在一种实现方式中,调度服务器根据第一剩余负载量从n个待处理任务中筛选出m个第一待处理任务的具体方式可以为,调度服务器从n个待处理任务中随机筛选m个待处理任务,若该m个待处理任务的任务量的和值与第一剩余负载量之间的差值小于预设阈值,则将该m个待处理任务确定为m个第一待处理任务。若该m个待处理任务的任务量的和值与第一剩余负载量之间的差值大于或等于预设阈值,则调度服务器再次随机筛选m个待处理任务,并再次对该m个待处理任务的任务量的和值与第一剩余负载量之间的差值进行计算。在一种实现方式中,调度服务器根据第一剩余负载量从n个待处理任务中筛选出m个第一待处理任务的具体方式可以为,调度服务器获取第一剩余负载量之后,基于第一剩余负载量从n个待处理任务中选取出m个待处理任务,使得该m个待处理任务的任务量的和值与第一剩余负载量之间的差值最小,当该m个待处理任务的任务量的和值与第一剩余负载量之间的差值小于预设阈值时,调度服务器将该m个待处理任务确定为m个第一待处理任务。例如,第一剩余负载量为500兆,n为3,m为2,待处理任务1的任务量为200,待处理任务2的任务量为400,待处理任务3的任务量为200,预设阈值为200,则调度服务器确定待处理任务1和待处理任务3的和值为400,与第一任务量之间的差值为100,并确定待处理任务1和待处理任务3为第一待处理任务。s204、调度服务器对m个第一待处理任务进行聚合处理,得到第一待处理任务集合。本发明实施例中,调度服务器筛选出m个第一待处理任务之后,将对m个第一待处理任务进行聚合处理,得到第一待处理任务集合,即将m个待处理任务放入同一个集合中。s205、调度服务器将第一待处理任务集合发送至第一执行服务器,以使得第一执行服务器对第一待处理任务集合中的m个第一待处理任务进行处理。本发明实施例中,调度服务器确定出第一待处理任务集合后,可以将第一待处理任务集合发送至第一执行服务器,以使得第一执行服务器对第一待处理任务集合中的m个第一待处理任务进行处理。在一种实现方式中,第一执行服务器包括多个接口,每个接口接收到的任务对应的处理优先级不同,调度服务器将第一待处理任务集合发送至第一执行服务器的具体方式可以为,调度服务器获取第一待处理任务集合中各个第一待处理任务的时间戳,根据各个第一待处理任务的时间戳确定每个第一待处理任务对应的接口,并建立每个待处理任务与接口之间的连接,调度服务器基于该连接将第一待处理任务集合中的各个待处理任务发送至第一服务器中对应的接口,使得第一服务器对所述各个待处理任务进行接收。各个第一待处理任务的时间戳具体可以包括调度服务器接收到各个第一待处理任务的时间,调度服务器在接收到n个待处理任务时,将确定该n个待处理任务的时间戳。在一种实现方式中,第一执行服务器包括多个接口,每个接口接收到的任务类型不同,调度服务器将第一待处理任务集合发送至第一执行服务器的具体方式可以为,调度服务器确定第一待处理任务集合中各个第一待处理任务的任务类型,根据各个第一待处理任务的任务类型确定每个第一待处理任务对应的接口,并建立每个待处理任务与接口之间的连接,调度服务器基于该连接将第一待处理任务集合中的各个待处理任务发送至第一服务器中对应的接口,使得第一服务器对所述各个待处理任务进行接收。第一待处理任务的任务类型可以为检索型、计算型、资源获取型等。s206、调度服务器接收第一执行服务器返回的针对第一待处理任务集合的第一处理结果。本发明实施例中,第一执行服务器可以对第一待处理任务集合中的所有第一待处理任务都处理完成后,将所有第一待处理任务的处理结果合并得到第一处理结果,并返回值调度服务器,调度服务器将该第一处理结果发送至对应的终端。或者,第一执行服务器可以在处理完成第一待处理任务集合中的任意一个任务,得到第一处理结果后,立即向调度服务器返回该第一处理结果,调度服务器对该第一处理结果进行接收。进一步的,调度服务器也可以接收服务器集群中其他各个执行服务器返回的处理结果。s207、调度服务器将第一处理结果发送至终端。本发明实施例中,调度服务器接收到第一执行服务器返回的第一处理结果之后,可以将第一处理结果发送至所述终端。具体的,调度服务器获取与终端之间的通信信息,通信信息包括通信距离和通信带宽;调度服务器根据通信信息确定针对第一处理结果的发送时间;并在计算得到的发送时间时向终端发送第一处理结果,以使得终端接收到所述第一处理结果的时间与预设时间相同。其中,调度服务器具体可以基于通信距离和通信带宽计算得到处理结果发送至终端所需要的传输时长,并在考虑传输时长因素的情况下向终端发送第一处理结果,使得终端接收处理结果的时间与预期相同。在一种实施场景中,调度服务器需要将处理结果同时返回至不同的终端,此时,调度服务器可以获取每个终端与调度服务器之间的距离以及通信带宽,并基于距离和通信带宽确定针对处理结果的发送时间,将距离较长的终端优先发送处理结果,距离较短的终端延后发送处理结果。以实现各个终端对于处理结果的同时接收。上述场景具体可以为抢红包场景,具体的,调度服务器可以检测每个终端与自身的距离以及通信带宽,并基于上述因素确定针对红包的发送时间,使得每个终端都具有相同的概率抢到该红包,而不至于因距离过长或者网速较慢导致某些终端始终无法抢到红包。本发明实施例中,调度服务器接收终端发送的n个待处理任务,并确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量,调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器,并确定第一执行服务器的第一剩余负载量;调度服务器根据第一剩余负载量从所述n个待处理任务中筛选出m个第一待处理任务,并对m个第一待处理任务进行聚合处理,得到第一待处理任务集合,调度服务器将第一待处理任务集合发送至所述第一执行服务器,以使得所述第一执行服务器对所述第一待处理任务集合中的m个第一待处理任务进行处理。通过实施上述方法,在接收到待处理任务时,以执行服务器的处理效率和剩余负载量为参考因素选取该执行服务器需要处理的待处理任务,使得执行服务器可以尽可能饱和的处理待处理任务,充分发挥了执行服务器的性能,提升了服务器对待处理任务的处理效率,并且,在发送过程中基于数据的传输时长确定发送时间,使得终端可以在预期时间接收到数据,提升了数据接收的稳定性。基于上述任务处理系统和方法的实施例的描述,本发明实施例提供另一种任务处理方法,该方法可以应用于图1所示的任务处理系统中,具体可以由图1所示的调度服务器执行。请参见图3,该任务处理过程可包括以下步骤s301-s306:s301、调度服务器接收终端发送的n个待处理任务,并确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量。本发明实施例中,n个待处理任务可以由用户通过终端进行输入,终端检测到用户输入的待处理任务之后,将n个待处理任务发送至调度服务器,调度服务器对终端发送的n个待处理任务进行接收。其中,n个待处理任务可以为同一终端进行发送n个待处理任务,或者为调度服务器在某一时间段接收到的不同终端发送的n个待处理任务。调度服务器接收到n个待处理任务之后,将确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量。s302、调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器,并确定第一执行服务器的第一剩余负载量。本发明实施例中,调度服务器确定每个待处理任务对应的任务量以及每个执行服务器的状态信息之后,将根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器,并确定第一执行服务器的第一剩余负载量。s303、调度服务器根据第一剩余负载量从n个待处理任务中筛选出m个第一待处理任务,并对m个第一待处理任务进行聚合处理,得到第一待处理任务集合。本发明实施例中,调度服务器确定第一执行服务器对应的第一剩余负载量之后,将根据第一剩余负载量从n个待处理任务中筛选出m个第一待处理任务。若第一剩余负载量大于或等于该n个待处理任务对应的任务量的和值,则调度服务器直接将该n个待处理任务确定为该m个第一待处理任务,若第一剩余负载量小于该n个待处理任务对应的任务量的和值,则调度服务器根据第一剩余负载量从n个待处理任务中筛选出m个第一待处理任务,其中,m个第一待处理任务的任务量的和值与第一剩余负载量之间的差值小于预设阈值。进一步的,当m小于n时,调度服务器执行步骤s304。s304、调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第二执行服务器,并确定第二执行服务器的第二剩余负载量。在一种实现方式中,调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第二执行服务器的具体方式可以为,调度服务器确定服务器集群中每个执行服务器的状态信息中的处理效率,并将服务器集群中处理效率次高的执行服务器确定为第一执行服务器。在一种实现方式中,调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第二执行服务器的具体方式也可以为,调度服务器确定服务器集群中每个执行服务器的状态信息中的剩余负载量,并将服务器集群中剩余负载量次高的执行服务器确定为第二执行服务器。在一种实现方式中,调度服务器根据每个执行服务器的状态信息从服务器集群中筛选出第二执行服务器的具体方式也可以为,调度服务器根据处理效率与权重的对应关系确定服务器集群中每个执行服务器的处理效率对应的第一权重;以及,根据剩余负载量与权重的对应关系确定服务器集群中每个执行服务器的剩余负载量对应的第二权重;根据每个执行服务器的第一权重和第二权重确定每个执行服务器对应的目标权重,并将目标权重次高的执行服务器确定为第二执行服务器,每个执行服务器目标权重为所述每个执行服务器的第一权重与第二权重的和值。进一步的,调度服务器确定第二执行服务器的第二剩余负载量。s305、调度服务器根据第二剩余负载量从除去m个第一待处理任务外的n-m个待处理任务中筛选出k个第二待处理任务。本发明实施例中,k为小于n-m的正整数,终端确定第二执行服务器的第二剩余负载量之后,将检测剩余的n-m个待处理任务对应的任务量的和值是否小于该第二剩余负载量,若是,则调度服务器直接将该n-m个待处理任务确定为k个第二待处理任务,并对所述k个第二待处理任务进行聚合处理,得到第二待处理任务集合;若剩余的n-m个待处理任务对应的任务量的和值大于该第二剩余负载量,则调度服务器采用与步骤s203相同的方式筛选出k个第二待处理任务,并对所述k个第二待处理任务进行聚合处理,得到第二待处理任务集合。进一步的,调度服务器可以继续根据服务器集群中每个执行服务器的剩余负载量对剩余的n-m-k个待处理任务进行集合划分,并确定每个集合对应的执行服务器,以使得n个待处理任务中每个待处理任务都对应有相应的执行服务器进行处理。s306、调度服务器将第一待处理任务集合发送至第一执行服务器,以及将第二待处理任务集合发送至第二执行服务器。本发明实施例中,调度服务器第一待处理任务集合之后,可以将将第一待处理任务集合发送至第一执行服务器,以使得所述第一执行服务器对所述第一待处理任务集合中的m个第一待处理任务进行处理,以及将第二待处理任务集合发送至第二执行服务器,以使得所述第二执行服务器对所述第二待处理任务集合中的k个第二待处理任务进行处理,进一步的,调度服务器可以接收第一执行服务器和第二执行服务器返回的处理结果,并将接收到的处理结果返回至终端。本发明实施例中,调度服务器在接收到待处理任务时,以执行服务器的处理效率和剩余负载量为参考因素选取该执行服务器需要处理的待处理任务,使得服务器可以尽可能饱和的处理待处理任务,充分发挥了执行服务器的性能,提升了服务器对待处理任务的处理效率。基于上述任务处理方法实施例的描述,本发明实施例还公开了一种任务处理装置。该任务处理装置可以是运行于调度服务器中的一个计算机程序(包括程序代码),也可以是包含在调度服务器中的一个实体装置。该任务处理装置可以执行图2和图3所示的方法。请参见图4,该任务处理装置40包括:接收模块401、确定模块402、筛选模块403、处理模块404、发送模块405。接收模块401,用于接收终端发送的n个待处理任务;确定模块402,用于确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量,所述状态信息包括处理效率和剩余负载量,所述n为正整数;筛选模块403,用于根据所述每个执行服务器的状态信息从所述服务器集群中筛选出第一执行服务器;所述确定模块402,还用于确定所述第一执行服务器的第一剩余负载量;所述筛选模块403,还用于根据所述第一剩余负载量从所述n个待处理任务中筛选出m个第一待处理任务,所述m个第一待处理任务的任务量的和值与所述第一剩余负载量之间的差值小于预设阈值,所述m为小于或等于n的正整数;处理模块404,用于对所述m个第一待处理任务进行聚合处理,得到第一待处理任务集合;发送模块405,用于将所述第一待处理任务集合发送至所述第一执行服务器,以使得所述第一执行服务器对所述第一待处理任务集合中的m个第一待处理任务进行处理。在一种实现方式中,确定模块402,具体用于:确定所述服务器集群中每个执行服务器的状态信息中的处理效率,并将所述服务器集群中处理效率最高的执行服务器确定为第一执行服务器;或者,确定所述服务器集群中每个执行服务器的状态信息中的剩余负载量,并将所述服务器集群中剩余负载量最大的执行服务器确定为第一执行服务器。在一种实现方式中,确定模块402,具体用于:根据处理效率与权重的对应关系确定所述服务器集群中每个执行服务器的处理效率对应的第一权重;根据剩余负载量与权重的对应关系确定所述服务器集群中每个执行服务器的剩余负载量对应的第二权重;根据所述每个执行服务器对应的第一权重和第二权重确定所述每个执行服务器对应的目标权重,并将目标权重最高的执行服务器确定为第一执行服务器,所述每个执行服务器对应的目标权重为所述每个执行服务器对应的第一权重与第二权重的和值。在一种实现方式中,筛选模块403,具体用于:根据所述每个执行服务器的状态信息从所述服务器集群中筛选出第二执行服务器,并确定所述第二执行服务器的第二剩余负载量;根据所述第二剩余负载量从除去所述m个第一待处理任务外的n-m个待处理任务中筛选出k个第二待处理任务,所述k为小于或等于n-m的正整数;对所述k个第二待处理任务进行聚合处理,得到第二待处理任务集合;将所述第二待处理任务集合发送至所述第二执行服务器,以使得所述第二执行服务器对所述第二待处理任务集合中的k个第二待处理任务进行处理。在一种实现方式中,发送模块405,具体用于:获取所述第一待处理任务集合中各个第一待处理任务的时间戳;根据所述各个第一待处理任务的时间戳确定每个第一待处理任务对应的接口,并建立每个待处理任务与接口之间的连接,所述接口为所述第一服务器中用于任务请求接收的接口,所述第一服务器中不同接口接收到的任务对应的处理优先级不同;基于所述连接将所述第一待处理任务集合中的各个待处理任务发送至所述第一服务器中对应的接口,使得所述第一服务器对所述各个待处理任务进行接收。在一种实现方式中,接收模块401,还用于接收所述第一执行服务器返回的针对第一待处理任务集合的第一处理结果;发送模块405,还用于将所述第一处理结果发送至所述终端。在一种实现方式中,发送模块405,具体用于:获取与所述终端之间的通信信息,所述通信信息包括通信距离和通信带宽;根据所述通信信息确定针对所述第一处理结果的发送时间;在所述发送时间时向所述终端发送第一处理结果,以使得所述终端接收到所述第一处理结果的时间与预设时间相同。本发明实施例中,接收模块401接收终端发送的n个待处理任务,确定模块402确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量,筛选模块403根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器,确定模块402确定第一执行服务器的第一剩余负载量;筛选模块403根据第一剩余负载量从所述n个待处理任务中筛选出m个第一待处理任务,处理模块404对m个第一待处理任务进行聚合处理,得到第一待处理任务集合,发送模块405将第一待处理任务集合发送至所述第一执行服务器。通过实施上述方法,在接收到待处理任务时,以执行服务器的处理效率和剩余负载量为参考因素选取该执行服务器需要处理的待处理任务,使得执行服务器可以尽可能饱和的处理待处理任务,充分发挥了执行服务器的性能,提升了服务器对待处理任务的处理效率。请参见图5,为本发明实施例提供的一种调度服务器的结构示意图。如图5所示,该调度服务器包括:至少一个处理器501,输入设备503,输出设备504,存储器505,至少一个通信总线502。其中,通信总线502用于实现这些组件之间的连接通信。其中,存储器505可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器505可选的还可以是至少一个位于远离前述处理器501的存储装置。其中处理器501可以结合图4所描述的装置,存储器505中存储一组程序代码,且处理器501,输入设备503,输出设备504调用存储器505中存储的程序代码,用于执行以下操作:输入设备503,用于接收终端发送的n个待处理任务,并确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量,所述状态信息包括处理效率和剩余负载量,所述n为正整数;处理器501,用于根据所述每个执行服务器的状态信息从所述服务器集群中筛选出第一执行服务器,并确定所述第一执行服务器的第一剩余负载量;处理器501,用于根据所述第一剩余负载量从所述n个待处理任务中筛选出m个第一待处理任务,所述m个第一待处理任务的任务量的和值与所述第一剩余负载量之间的差值小于预设阈值,所述m为小于或等于n的正整数;处理器501,用于对所述m个第一待处理任务进行聚合处理,得到第一待处理任务集合;输出设备504,用于将所述第一待处理任务集合发送至所述第一执行服务器,以使得所述第一执行服务器对所述第一待处理任务集合中的m个第一待处理任务进行处理。在一种实现方式中,处理器501,具体用于:确定所述服务器集群中每个执行服务器的状态信息中的处理效率,并将所述服务器集群中处理效率最高的执行服务器确定为第一执行服务器;或者,确定所述服务器集群中每个执行服务器的状态信息中的剩余负载量,并将所述服务器集群中剩余负载量最大的执行服务器确定为第一执行服务器。在一种实现方式中,处理器501,具体用于:根据处理效率与权重的对应关系确定所述服务器集群中每个执行服务器的处理效率对应的第一权重;根据剩余负载量与权重的对应关系确定所述服务器集群中每个执行服务器的剩余负载量对应的第二权重;根据所述每个执行服务器对应的第一权重和第二权重确定所述每个执行服务器对应的目标权重,并将目标权重最高的执行服务器确定为第一执行服务器,所述每个执行服务器对应的目标权重为所述每个执行服务器对应的第一权重与第二权重的和值。在一种实现方式中,处理器501,具体用于:根据所述每个执行服务器的状态信息从所述服务器集群中筛选出第二执行服务器,并确定所述第二执行服务器的第二剩余负载量;根据所述第二剩余负载量从除去所述m个第一待处理任务外的n-m个待处理任务中筛选出k个第二待处理任务,所述k为小于或等于n-m的正整数;对所述k个第二待处理任务进行聚合处理,得到第二待处理任务集合;将所述第二待处理任务集合发送至所述第二执行服务器,以使得所述第二执行服务器对所述第二待处理任务集合中的k个第二待处理任务进行处理。在一种实现方式中,处理器501,具体用于:获取所述第一待处理任务集合中各个第一待处理任务的时间戳;根据所述各个第一待处理任务的时间戳确定每个第一待处理任务对应的接口,并建立每个待处理任务与接口之间的连接,所述接口为所述第一服务器中用于任务请求接收的接口,所述第一服务器中不同接口接收到的任务对应的处理优先级不同;输出设备504,用于基于所述连接将所述第一待处理任务集合中的各个待处理任务发送至所述第一服务器中对应的接口,使得所述第一服务器对所述各个待处理任务进行接收。在一种实现方式中,输入设备503,用于接收所述第一执行服务器返回的针对第一待处理任务集合的第一处理结果;输出设备504,用于将所述第一处理结果发送至所述终端。在一种实现方式中,处理器501,具体用于:获取与所述终端之间的通信信息,所述通信信息包括通信距离和通信带宽;根据所述通信信息确定针对所述第一处理结果的发送时间;输出设备504,用于在所述发送时间时向所述终端发送第一处理结果,以使得所述终端接收到所述第一处理结果的时间与预设时间相同。本发明实施例中,输入设备503接收终端发送的n个待处理任务,处理器501确定用于任务处理的服务器集群中每个执行服务器的状态信息以及每个待处理任务对应的任务量,处理器501根据每个执行服务器的状态信息从服务器集群中筛选出第一执行服务器,处理器501确定第一执行服务器的第一剩余负载量;并根据第一剩余负载量从所述n个待处理任务中筛选出m个第一待处理任务,处理器501对m个第一待处理任务进行聚合处理,得到第一待处理任务集合,输出设备504将第一待处理任务集合发送至所述第一执行服务器。通过实施上述方法,在接收到待处理任务时,以执行服务器的处理效率和剩余负载量为参考因素选取该执行服务器需要处理的待处理任务,使得执行服务器可以尽可能饱和的处理待处理任务,充分发挥了执行服务器的性能,提升了服务器对待处理任务的处理效率。本发明实施例中所述模块,可以通过通用集成电路,例如cpu(centralprocessingunit,中央处理器),或通过asic(applicationspecificintegratedcircuit,专用集成电路)来实现。应当理解,在本发明实施例中,所称处理器501可以是中央处理模块(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。总线502可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外部设备互联(peripheralcomponent,pci)总线或扩展工业标准体系结构(extendedindustrystandardarchitecture,eisa)总线等,该总线502可以分为地点总线、数据总线、控制总线等,为便于表示,图5仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的计算机可读存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1