CN109710407A - 分布式系统实时任务调度方法、装置、设备及存储介质 - Google Patents
分布式系统实时任务调度方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN109710407A CN109710407A CN201811574321.7A CN201811574321A CN109710407A CN 109710407 A CN109710407 A CN 109710407A CN 201811574321 A CN201811574321 A CN 201811574321A CN 109710407 A CN109710407 A CN 109710407A
- Authority
- CN
- China
- Prior art keywords
- task
- node
- queue
- scheduling
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000012545 processing Methods 0.000 claims abstract description 73
- 238000004364 calculation method Methods 0.000 claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 10
- 230000000694 effects Effects 0.000 abstract description 2
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000010181 polygamy Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Landscapes
- Multi Processors (AREA)
Abstract
本发明公开了一种分布式系统实时任务调度方法,根据各个节点的资源情况,确定各个节点对应的计算能力值;接收多个任务请求,将任务放入调度队列中;根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;将调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与理想时间的差值在预设范围内。本申请根据节点的计算能力、当前处理队列信息,合理安排系统接收的任务执行顺序和分配情况,能在较大程度上保持系统的负载均衡。此外,本申请还提供了一种分布式系统实时任务调度装置、设备以及计算机可读存储介质,同样具有上述技术效果。
Description
技术领域
本发明涉及分布式计算技术领域,特别是涉及一种分布式系统实时任务调度方法、装置、设备以及计算机可读存储介质。
背景技术
在目前云计算大数据等大规模分布式环境中,经常会遇到任务调度的问题。由于环境中各个节点的资源情况不同,任务执行消耗不同,使得任务调度比较复杂。常见的任务调度方法有:min-min算法以及max-min算法。其中,min-min算法的思想是首先映射小的任务,并且映射到执行快的机器上。这种算法容易出现负载不均衡的情况。而max-min算法则首先调度大任务,任务到资源的映射是选择最早完成所需时间最大的任务映射到所对应的机器上。这种算法会导致任务平均等待时间过长。
可见,现有的min-min算法及max-min算法均存在一些问题,不能完全满足调度需求。
发明内容
本发明的目的是提供一种分布式系统实时任务调度方法、装置、设备以及计算机可读存储介质,以对现有分布式系统任务调度进行优化。
为解决上述技术问题,本发明提供一种分布式系统实时任务调度方法,包括:
根据各个节点的资源情况,确定各个节点对应的计算能力值;
接收多个任务请求,将多个任务放入调度队列中;
根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;
将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与所述理想时间的差值在预设范围内,每个节点均维护一个对应的处理队列。
可选地,所述将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与所述理想时间的差值在预设范围内包括:
将调度队列L中的任务按照先进先出的顺序放入各个节点对应的处理队列Ln,各个节点对应的处理队列Ln按照各个节点的计算能力值进行排序;
若所述处理队列Ln放入当前所调度任务之前为空,则计算所述处理队列Ln所对应的节点完成任务所需的任务执行时间Tn,当Tn大于等于完成所有任务的理想时间T时,则将下一个任务放入队列Ln+1,直至所有任务分配完毕;
若处理队列Ln不为空,则根据每个节点剩余任务执行时间及计算能力值Pn加权后,重新排列各个节点对应的处理队列Ln的顺序,并依次从调度队列L中取出任务放入调度队列Ln,当调度队列Ln中的任务执行时间Tn大于等于所有任务的理想时间T时,则将下一个任务放入Ln+1,直至所有任务分配完毕;
其中,1≤n≤m,m为参与调度的节点个数。
可选地,还包括:
当遍历所有的节点对应的处理队列Ln中的任务执行时间Tn均大于等于所有任务的理想时间T时,则等待下一个分配周期执行调度。
可选地,在所述将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理之后还包括:
接收各个节点实时上报的任务执行状态和剩余任务执行时间。
可选地,所述将多个任务放入调度队列中包括:
判断放入调度队列中的任务是否超过预设阈值,如果是,则不再接收新任务请求。
可选地,在所述将多个任务放入调度队列中之后还包括:
当检测到第一任务的预计计算量超过当前其他任务的平均计算量时,将所述第一任务放在所述调度队列的最前面进行分配。
可选地,在所述将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理之后还包括:
当第二任务执行失败后,将所述第二任务从节点对应的处理队列中返回至所述调度队列的最前面,重新进行调度并执行;
当执行失败超过预设次数时,返回任务执行失败的信息。
本申请还提供了一种分布式系统实时任务调度装置,包括:
确定模块,用于根据各个节点的资源情况,确定各个节点对应的计算能力值;
接收模块,用于接收多个任务请求,将多个任务放入调度队列中;
计算模块,用于根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;
调度模块,用于将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与所述理想时间的差值在预设范围内,每个节点均维护一个对应的处理队列。
本申请还提供了一种分布式系统实时任务调度设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一种所述分布式系统实时任务调度方法的步骤。
本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种所述分布式系统实时任务调度方法的步骤。
本发明所提供的分布式系统实时任务调度方法,根据各个节点的资源情况,确定各个节点对应的计算能力值;接收多个任务请求,将任务放入调度队列中;根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;将调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与理想时间的差值在预设范围内,每个节点均维护一个对应的处理队列。本申请通过对系统中每个节点创建相应的处理队列,并根据其计算能力、当前处理队列信息,合理安排系统接收的任务执行顺序和分配情况,基本实现了任务按顺序执行的需求,并能在较大程度上保持系统中节点的负载均衡。此外,本申请还提供了一种分布式系统实时任务调度装置、设备以及计算机可读存储介质,同样具有上述技术效果。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请所提供的分布式系统实时任务调度方法的一种具体实施方式的流程图;
图2为本申请所提供的分布式系统实时任务调度方法的另一种具体实施方式的流程图;
图3为本发明实施例提供的分布式系统实时任务调度装置的结构框图;
图4为本发明实施例提供的分布式系统实时任务调度设备的一种具体实施方式的结构框图;
图5为发明实施例提供的分布式系统实时任务调度设备的另一种具体实施方式的结构框图。
具体实施方式
现有的分布式系统任务调度技术中,所采用的min-min算法及max-min算法均存在一些问题,不能完全满足调度需求。本发明的核心是提供一种分布式系统实时任务调度方法、装置、设备以及计算机可读存储介质,以对分布式系统任务调度进行优化。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请所提供的分布式系统实时任务调度方法的一种具体实施方式的流程图如图1所示,该方法具体包括:
步骤S101:根据各个节点的资源情况,确定各个节点对应的计算能力值;
从各个节点获取资源情况的信息,并根据资源情况对每一个节点的计算能力进行量化,得到各个节点对应的计算能力值。在得到各个节点对应的计算能力值之后,可以根据计算能力值的大小对各个节点进行排序。
步骤S102:接收多个任务请求,将多个任务放入调度队列中;
初始化调度队列L,该调度队列L用于存放接收的全局的任务请求。并且为每一个节点均维护一个处理队列Ln,其中n为当前参与调度的第n个节点,1≤n≤m,m为参与调度的节点个数。接收r个任务请求及每个任务的预计计算量Cr,并将任务放入初始化队列L中。
步骤S103:根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;
根据所有任务的预计计算量之和C与所有节点对应的计算能力值之和P,P=P1+P2+……+Pm,计算出所有任务完成的理想时间T,所有的任务包括初始化队列L及已经分配到节点队列Ln中的任务。
步骤S104:将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与所述理想时间的差值在预设范围内,每个节点均维护一个对应的处理队列。
其中,预设范围用于保证任务执行时间与理想时间相差在一个较小的阈值范围内,即保证所用时间基本相当,确保能够在较大程度上保持系统中节点的负载均衡。
本发明所提供的分布式系统实时任务调度方法,根据各个节点的资源情况,确定各个节点对应的计算能力值;接收多个任务请求,将任务放入调度队列中;根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;将调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与理想时间的差值在预设范围内,每个节点均维护一个对应的处理队列。本申请通过对系统中每个节点创建相应的处理队列,并根据其计算能力、当前处理队列信息,合理安排系统接收的任务执行顺序和分配情况,基本实现了任务按顺序执行的需求,并能在较大程度上保持系统中节点的负载均衡。
在上述实施例的基础上,本申请所提供的分布式系统实时任务调度方法的另一种具体实施方式的流程图如图2所示,该方法具体包括:
步骤S201:根据各个节点的资源情况,确定各个节点对应的计算能力值;
从各个节点获取资源情况的信息,并根据资源情况对每一个节点的计算能力进行量化,得到各个节点对应的计算能力值。在得到各个节点对应的计算能力值之后,可以根据计算能力值的大小对各个节点进行排序。
步骤S202:接收多个任务请求,将多个任务放入调度队列中;
初始化调度队列L,该调度队列L用于存放接收的全局的任务请求。并且为每一个节点均维护一个处理队列Ln,其中n为当前参与调度的第n个节点,1≤n≤m,m为参与调度的节点个数。接收r个任务请求及每个任务的预计计算量Cr,并将任务放入初始化队列L中。
步骤S203:根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;
根据所有任务的预计计算量之和C与所有节点对应的计算能力值之和P,P=P1+P2+……+Pm,计算出所有任务完成的理想时间T,所有的任务包括初始化队列L及已经分配到节点队列Ln中的任务。
步骤S204:将调度队列L中的任务按照先进先出的顺序放入各个节点对应的处理队列Ln,各个节点对应的处理队列Ln按照各个节点的计算能力值进行排序;
步骤S205:若所述处理队列Ln放入当前所调度任务之前为空,则计算所述处理队列Ln所对应的节点完成任务所需的任务执行时间Tn,当Tn大于等于完成所有任务的理想时间T时,则将下一个任务放入队列Ln+1,直至所有任务分配完毕;
步骤S206:若处理队列Ln不为空,则根据每个节点剩余任务执行时间及计算能力值Pn加权后,重新排列各个节点对应的处理队列Ln的顺序,并依次从调度队列L中取出任务放入调度队列Ln,当调度队列Ln中的任务执行时间Tn大于等于所有任务的理想时间T时,则将下一个任务放入Ln+1,直至所有任务分配完毕;
其中,n为参与调度的节点个数,1≤n≤m,m为分布式系统中的所有节点数。
将调度队列L中的任务按照先进先出的顺序放入队列Ln,若队列为空,计算该Ln所对应的节点完成任务所需时间Tn,当Tn大于等于T时,则下一个任务放入队列Ln+1,直至所有任务分配完毕,该操作会间隔一定的时间来执行。若队列Ln不为空,则根据每个节点剩余任务执行时间及计算能力Pn加权后,重新排列Ln顺序,并依次从队列L中取出任务放入队列Ln,当队列Ln中的任务执行时间Tn大于等于T时,则下一个任务放入Ln+1,直至所有任务分配完毕。
在上述实施例的基础上,本申请所提供的方法还可以包括:当遍历所有的节点对应的处理队列Ln中的任务执行时间Tn均大于等于所有任务的理想时间T时,则等待下一个分配周期执行调度。若队列L中的某一任务遍历所有的节点对应的Ln均无法放入,则等待下一个分配周期。通过周期性的对任务进行分配,能够避免完全实时的系统调度增加系统复杂性的问题,避免了实时分配任务导致的计算量较大,在大规模系统情况下消耗资源较多、执行效率差的问题。
此外,当队列L中的任务到达一定程度后,系统不再接收新任务请求。即,通过判断放入调度队列中的任务是否超过预设阈值,如果是,则不再接收新任务请求。预设阈值可以根据实际情况进行设置,在此不作限定。
进一步地,在所述将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理之后还包括:接收各个节点实时上报的任务执行状态和剩余任务执行时间。在任务放入队列后,所有节点实时上报任务执行状态及剩余执行时间,能够及时了解任务的执行情况。
可选地,在所述将所述任务放入调度队列中之后还包括:当检测到第一任务的预计计算量超过当前其他任务的平均计算量时,将所述第一任务放在所述调度队列的最前面进行分配。在某个任务预计计算量超过当前其他任务平均计算量的情况下,则将该任务在该分配周期中优先分配,即将该任务放到队列L的最前面进行分配。通过这样的设置,能够对较大任务进行单独优先处理,提高了这类任务的执行速度,同时又不会过于影响其他任务的执行。
在所述将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理之后还包括:当第二任务执行失败后,将所述第二任务从节点对应的处理队列中返回至所述调度队列的最前面,重新进行调度并执行;当执行失败超过预设次数时,返回任务执行失败的信息。当某个任务执行失败后,则将该任务从队列Ln中返回初始化队列L最前,等待下一个分配执行周期再次执行,执行失败某一特定次数,则该任务执行失败,返回失败信息。
若某个任务不能获取其计算量,则根据历史任务平均值确定,执行一次之后,将实际计算量分配给该任务。这种情况只在执行一些重复性的任务时使用,且该类型任务数量不能高于一定比例。
此外,本申请所提供的分布式系统实时任务调度方法还可以加入任务优先级算法,以更加符合实际的使用需求。
本申请通过对系统中每个节点创建相应的处理队列,并根据其计算能力、当前处理队列信息,合理安排系统接收的任务执行顺序和分配情况,基本实现了任务按顺序执行的需求,并能在较大程度上保持系统中节点的负载均衡。进一步地,本申请还能够对较大任务进行单独优先处理,提高了这类任务的执行速度,同时又不会过于影响其他任务的执行。另外,本申请通过对接收的任务进行周期性的分配,避免了实时分配任务导致的计算量较大,在大规模系统情况下消耗资源较多、执行效率差的问题。
下面对本发明实施例提供的分布式系统实时任务调度装置进行介绍,下文描述的分布式系统实时任务调度装置与上文描述的分布式系统实时任务调度方法可相互对应参照。
图3为本发明实施例提供的分布式系统实时任务调度装置的结构框图,参照图3分布式系统实时任务调度装置可以包括:
确定模块100,用于根据各个节点的资源情况,确定各个节点对应的计算能力值;
接收模块200,用于接收多个任务请求,将多个任务放入调度队列中;
计算模块300,用于根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;
调度模块400,用于将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与所述理想时间的差值在预设范围内,每个节点均维护一个对应的处理队列。
本实施例的分布式系统实时任务调度装置用于实现前述的分布式系统实时任务调度方法,因此分布式系统实时任务调度装置中的具体实施方式可见前文中的分布式系统实时任务调度方法的实施例部分,例如,确定模块100,接收模块200,计算模块300,调度模块400,分别用于实现上述分布式系统实时任务调度方法中步骤S101,S102,S103和S104,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
本发明所提供的分布式系统实时任务调度装置,根据各个节点的资源情况,确定各个节点对应的计算能力值;接收多个任务请求,将任务放入调度队列中;根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;将调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与理想时间的差值在预设范围内,每个节点均维护一个对应的处理队列。本申请通过对系统中每个节点创建相应的处理队列,并根据其计算能力、当前处理队列信息,合理安排系统接收的任务执行顺序和分配情况,基本实现了任务按顺序执行的需求,并能在较大程度上保持系统中节点的负载均衡。
此外,本申请还提供了一种分布式系统实时任务调度设备,参见图4本申请所提供的分布式系统实时任务调度设备的结构框图,该设备具体包括:
存储器11,用于存储计算机程序;
处理器12,用于执行所述计算机程序时实现上述任一种所述分布式系统实时任务调度方法的步骤。
具体的,存储器11包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器12在一些实施例中可以是一中央处理器(CentralProcessing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,为电子设备提供计算和控制能力。
在上述实施例的基础上,作为优选实施方式,参见图5,所述设备还包括:
输入接口13,与处理器12相连,用于获取外部导入的计算机程序、参数和指令,经处理器12控制保存至存储器11中。该输入接口13可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。
显示单元14,与处理器12相连,用于显示处理器12处理的数据以及用于显示可视化的用户界面。该显示单元14可以为LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。
网络端口15,与处理器12相连,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(MHL)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术等。
图5仅示出了具有组件11-15的电子设备,本领域技术人员可以理解的是,图5示出的结构并不构成对电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本申请还提供了一种计算机可读存储介质,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述公开的任一种分布式系统实时任务调度方法的步骤。
本申请通过对系统中每个节点创建相应的处理队列,并根据其计算能力、当前处理队列信息,合理安排系统接收的任务执行顺序和分配情况,基本实现了任务按顺序执行的需求,并能在较大程度上保持系统中节点的负载均衡。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的分布式系统实时任务调度方法、装置、设备以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种分布式系统实时任务调度方法,其特征在于,包括:
根据各个节点的资源情况,确定各个节点对应的计算能力值;
接收多个任务请求,将多个任务放入调度队列中;
根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;
将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与所述理想时间的差值在预设范围内,每个节点均维护一个对应的处理队列。
2.如权利要求1所述的分布式系统实时任务调度方法,其特征在于,所述将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与所述理想时间的差值在预设范围内包括:
将调度队列L中的任务按照先进先出的顺序放入各个节点对应的处理队列Ln,各个节点对应的处理队列Ln按照各个节点的计算能力值进行排序;
若所述处理队列Ln放入当前所调度任务之前为空,则计算所述处理队列Ln所对应的节点完成任务所需的任务执行时间Tn,当Tn大于等于完成所有任务的理想时间T时,则将下一个任务放入队列Ln+1,直至所有任务分配完毕;
若处理队列Ln不为空,则根据每个节点剩余任务执行时间及计算能力值Pn加权后,重新排列各个节点对应的处理队列Ln的顺序,并依次从调度队列L中取出任务放入调度队列Ln,当调度队列Ln中的任务执行时间Tn大于等于所有任务的理想时间T时,则将下一个任务放入Ln+1,直至所有任务分配完毕;
其中,1≤n≤m,m为参与调度的节点个数。
3.如权利要求2所述的分布式系统实时任务调度方法,其特征在于,还包括:
当遍历所有的节点对应的处理队列Ln中的任务执行时间Tn均大于等于所有任务的理想时间T时,则等待下一个分配周期执行调度。
4.如权利要求1至3任一项所述的分布式系统实时任务调度方法,其特征在于,在所述将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理之后还包括:
接收各个节点实时上报的任务执行状态和剩余任务执行时间。
5.如权利要求4所述的分布式系统实时任务调度方法,其特征在于,所述将多个任务放入调度队列中包括:
判断放入调度队列中的任务是否超过预设阈值,如果是,则不再接收新任务请求。
6.如权利要求5所述的分布式系统实时任务调度方法,其特征在于,在所述将多个任务放入调度队列中之后还包括:
当检测到第一任务的预计计算量超过当前其他任务的平均计算量时,将所述第一任务放在所述调度队列的最前面进行分配。
7.如权利要求6所述的分布式系统实时任务调度方法,其特征在于,在所述将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理之后还包括:
当第二任务执行失败后,将所述第二任务从节点对应的处理队列中返回至所述调度队列的最前面,重新进行调度并执行;
当执行失败超过预设次数时,返回任务执行失败的信息。
8.一种分布式系统实时任务调度装置,其特征在于,包括:
确定模块,用于根据各个节点的资源情况,确定各个节点对应的计算能力值;
接收模块,用于接收多个任务请求,将多个任务放入调度队列中;
计算模块,用于根据所有任务的预计计算量之和以及所有节点对应的计算能力值之和,计算得到完成所有任务的理想时间;
调度模块,用于将所述调度队列中的任务依次放入各个节点对应的处理队列中进行处理,以使各个节点完成对应的处理队列中的任务所需的任务执行时间与所述理想时间的差值在预设范围内,每个节点均维护一个对应的处理队列。
9.一种分布式系统实时任务调度设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述分布式系统实时任务调度方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述分布式系统实时任务调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811574321.7A CN109710407A (zh) | 2018-12-21 | 2018-12-21 | 分布式系统实时任务调度方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811574321.7A CN109710407A (zh) | 2018-12-21 | 2018-12-21 | 分布式系统实时任务调度方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109710407A true CN109710407A (zh) | 2019-05-03 |
Family
ID=66257099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811574321.7A Withdrawn CN109710407A (zh) | 2018-12-21 | 2018-12-21 | 分布式系统实时任务调度方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710407A (zh) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110543354A (zh) * | 2019-09-05 | 2019-12-06 | 腾讯科技(深圳)有限公司 | 任务调度方法、装置、设备及存储介质 |
CN111124644A (zh) * | 2019-12-19 | 2020-05-08 | 北京旷视科技有限公司 | 任务调度资源的确定方法、装置及系统 |
CN111158904A (zh) * | 2019-12-14 | 2020-05-15 | 珠海金智维信息科技有限公司 | 一种任务调度方法、装置、服务器及介质 |
CN111258724A (zh) * | 2020-01-14 | 2020-06-09 | 平安银行股份有限公司 | 一种分布式系统的数据处理方法、装置、设备和存储介质 |
CN111506398A (zh) * | 2020-03-03 | 2020-08-07 | 平安科技(深圳)有限公司 | 任务调度方法和装置、存储介质、电子装置 |
CN111782626A (zh) * | 2020-08-14 | 2020-10-16 | 工银科技有限公司 | 任务分配方法和装置、分布式系统、电子设备和介质 |
CN111782361A (zh) * | 2020-06-29 | 2020-10-16 | 济南浪潮高新科技投资发展有限公司 | 一种量子计算机集群分布式队列调度方法及系统 |
CN111813513A (zh) * | 2020-06-24 | 2020-10-23 | 中国平安人寿保险股份有限公司 | 基于分布式的实时任务调度方法、装置、设备及介质 |
CN112099930A (zh) * | 2020-09-14 | 2020-12-18 | 济南浪潮高新科技投资发展有限公司 | 一种量子计算机集群分布式队列调度方法 |
CN112114971A (zh) * | 2020-09-28 | 2020-12-22 | 中国建设银行股份有限公司 | 一种任务分配方法、装置及设备 |
WO2021022706A1 (zh) * | 2019-08-08 | 2021-02-11 | 平安科技(深圳)有限公司 | 分布式计算系统任务分配方法及相关设备 |
CN112395075A (zh) * | 2019-08-15 | 2021-02-23 | 阿里巴巴集团控股有限公司 | 资源的处理方法、装置以及资源调度系统 |
CN112463339A (zh) * | 2020-12-11 | 2021-03-09 | 北京浪潮数据技术有限公司 | 一种多任务调度方法、系统、设备及存储介质 |
CN112685157A (zh) * | 2020-12-29 | 2021-04-20 | 平安普惠企业管理有限公司 | 任务处理方法、装置、计算机设备及存储介质 |
WO2021147382A1 (zh) * | 2020-01-21 | 2021-07-29 | 上海万物新生环保科技集团有限公司 | 一种检测任务执行方法及设备 |
CN113687950A (zh) * | 2021-08-31 | 2021-11-23 | 平安医疗健康管理股份有限公司 | 基于优先级的任务分配方法、装置、设备及存储介质 |
CN113742036A (zh) * | 2020-05-28 | 2021-12-03 | 阿里巴巴集团控股有限公司 | 指标处理方法、装置及电子设备 |
CN114020430A (zh) * | 2021-11-04 | 2022-02-08 | 上海合阔信息技术有限公司 | 一种分布式任务调度方法、装置、电子设备及存储介质 |
CN114083180A (zh) * | 2020-08-24 | 2022-02-25 | 中国科学院沈阳自动化研究所 | 面向焊接生产线的焊缝任务分配方法 |
CN114510329A (zh) * | 2022-01-21 | 2022-05-17 | 北京火山引擎科技有限公司 | 一种确定任务节点预计产出时间的方法、装置及设备 |
CN114584627A (zh) * | 2022-05-09 | 2022-06-03 | 广州天越通信技术发展有限公司 | 一种具有网络监控功能的中台调度系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030135621A1 (en) * | 2001-12-07 | 2003-07-17 | Emmanuel Romagnoli | Scheduling system method and apparatus for a cluster |
CN103793272A (zh) * | 2013-12-27 | 2014-05-14 | 北京天融信软件有限公司 | 一种周期性任务调度方法及系统 |
CN104793990A (zh) * | 2015-04-21 | 2015-07-22 | 中国海洋大学 | 一种多时序任务调度方法和系统 |
CN107357652A (zh) * | 2017-06-16 | 2017-11-17 | 北京邮电大学 | 一种基于分段排序及标准差调整因子的云计算任务调度方法 |
-
2018
- 2018-12-21 CN CN201811574321.7A patent/CN109710407A/zh not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030135621A1 (en) * | 2001-12-07 | 2003-07-17 | Emmanuel Romagnoli | Scheduling system method and apparatus for a cluster |
CN103793272A (zh) * | 2013-12-27 | 2014-05-14 | 北京天融信软件有限公司 | 一种周期性任务调度方法及系统 |
CN104793990A (zh) * | 2015-04-21 | 2015-07-22 | 中国海洋大学 | 一种多时序任务调度方法和系统 |
CN107357652A (zh) * | 2017-06-16 | 2017-11-17 | 北京邮电大学 | 一种基于分段排序及标准差调整因子的云计算任务调度方法 |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021022706A1 (zh) * | 2019-08-08 | 2021-02-11 | 平安科技(深圳)有限公司 | 分布式计算系统任务分配方法及相关设备 |
CN112395075A (zh) * | 2019-08-15 | 2021-02-23 | 阿里巴巴集团控股有限公司 | 资源的处理方法、装置以及资源调度系统 |
CN110543354A (zh) * | 2019-09-05 | 2019-12-06 | 腾讯科技(深圳)有限公司 | 任务调度方法、装置、设备及存储介质 |
CN110543354B (zh) * | 2019-09-05 | 2023-06-13 | 腾讯科技(上海)有限公司 | 任务调度方法、装置、设备及存储介质 |
CN111158904A (zh) * | 2019-12-14 | 2020-05-15 | 珠海金智维信息科技有限公司 | 一种任务调度方法、装置、服务器及介质 |
CN111124644A (zh) * | 2019-12-19 | 2020-05-08 | 北京旷视科技有限公司 | 任务调度资源的确定方法、装置及系统 |
CN111124644B (zh) * | 2019-12-19 | 2023-04-04 | 北京旷视科技有限公司 | 任务调度资源的确定方法、装置及系统 |
CN111258724A (zh) * | 2020-01-14 | 2020-06-09 | 平安银行股份有限公司 | 一种分布式系统的数据处理方法、装置、设备和存储介质 |
CN111258724B (zh) * | 2020-01-14 | 2024-02-06 | 平安银行股份有限公司 | 一种分布式系统的数据处理方法、装置、设备和存储介质 |
WO2021147382A1 (zh) * | 2020-01-21 | 2021-07-29 | 上海万物新生环保科技集团有限公司 | 一种检测任务执行方法及设备 |
CN111506398B (zh) * | 2020-03-03 | 2024-05-10 | 平安科技(深圳)有限公司 | 任务调度方法和装置、存储介质、电子装置 |
CN111506398A (zh) * | 2020-03-03 | 2020-08-07 | 平安科技(深圳)有限公司 | 任务调度方法和装置、存储介质、电子装置 |
CN113742036B (zh) * | 2020-05-28 | 2024-01-30 | 阿里巴巴集团控股有限公司 | 指标处理方法、装置及电子设备 |
CN113742036A (zh) * | 2020-05-28 | 2021-12-03 | 阿里巴巴集团控股有限公司 | 指标处理方法、装置及电子设备 |
CN111813513A (zh) * | 2020-06-24 | 2020-10-23 | 中国平安人寿保险股份有限公司 | 基于分布式的实时任务调度方法、装置、设备及介质 |
CN111813513B (zh) * | 2020-06-24 | 2024-05-14 | 中国平安人寿保险股份有限公司 | 基于分布式的实时任务调度方法、装置、设备及介质 |
CN111782361B (zh) * | 2020-06-29 | 2024-04-30 | 山东浪潮科学研究院有限公司 | 一种量子计算机集群分布式队列调度方法及系统 |
CN111782361A (zh) * | 2020-06-29 | 2020-10-16 | 济南浪潮高新科技投资发展有限公司 | 一种量子计算机集群分布式队列调度方法及系统 |
CN111782626A (zh) * | 2020-08-14 | 2020-10-16 | 工银科技有限公司 | 任务分配方法和装置、分布式系统、电子设备和介质 |
CN114083180A (zh) * | 2020-08-24 | 2022-02-25 | 中国科学院沈阳自动化研究所 | 面向焊接生产线的焊缝任务分配方法 |
CN114083180B (zh) * | 2020-08-24 | 2022-07-26 | 中国科学院沈阳自动化研究所 | 面向焊接生产线的焊缝任务分配方法及系统 |
CN112099930A (zh) * | 2020-09-14 | 2020-12-18 | 济南浪潮高新科技投资发展有限公司 | 一种量子计算机集群分布式队列调度方法 |
CN112114971A (zh) * | 2020-09-28 | 2020-12-22 | 中国建设银行股份有限公司 | 一种任务分配方法、装置及设备 |
CN112463339A (zh) * | 2020-12-11 | 2021-03-09 | 北京浪潮数据技术有限公司 | 一种多任务调度方法、系统、设备及存储介质 |
CN112685157B (zh) * | 2020-12-29 | 2024-04-02 | 武汉安辰鑫信息科技有限公司 | 任务处理方法、装置、计算机设备及存储介质 |
CN112685157A (zh) * | 2020-12-29 | 2021-04-20 | 平安普惠企业管理有限公司 | 任务处理方法、装置、计算机设备及存储介质 |
CN113687950A (zh) * | 2021-08-31 | 2021-11-23 | 平安医疗健康管理股份有限公司 | 基于优先级的任务分配方法、装置、设备及存储介质 |
CN114020430A (zh) * | 2021-11-04 | 2022-02-08 | 上海合阔信息技术有限公司 | 一种分布式任务调度方法、装置、电子设备及存储介质 |
CN114510329B (zh) * | 2022-01-21 | 2023-08-08 | 北京火山引擎科技有限公司 | 一种确定任务节点预计产出时间的方法、装置及设备 |
CN114510329A (zh) * | 2022-01-21 | 2022-05-17 | 北京火山引擎科技有限公司 | 一种确定任务节点预计产出时间的方法、装置及设备 |
CN114584627A (zh) * | 2022-05-09 | 2022-06-03 | 广州天越通信技术发展有限公司 | 一种具有网络监控功能的中台调度系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109710407A (zh) | 分布式系统实时任务调度方法、装置、设备及存储介质 | |
Lin et al. | Multi-resource scheduling and power simulation for cloud computing | |
US9277003B2 (en) | Automated cloud workload management in a map-reduce environment | |
US9229783B2 (en) | Methods and apparatus for resource capacity evaluation in a system of virtual containers | |
Calheiros et al. | Energy-efficient scheduling of urgent bag-of-tasks applications in clouds through DVFS | |
US8881168B2 (en) | Scheduling a parallel job in a system of virtual containers | |
Calheiros et al. | Cost-effective provisioning and scheduling of deadline-constrained applications in hybrid clouds | |
TWI322391B (en) | Graphics processing apparatus and method for performing shading operation | |
CN110389816B (zh) | 用于资源调度的方法、装置以及计算机可读介质 | |
US9973512B2 (en) | Determining variable wait time in an asynchronous call-back system based on calculated average sub-queue wait time | |
RU2697700C2 (ru) | Равноправное разделение системных ресурсов в исполнении рабочего процесса | |
Lin et al. | A heuristic task scheduling algorithm based on server power efficiency model in cloud environments | |
US9374314B2 (en) | QoS aware balancing in data centers | |
CN113544647B (zh) | 云计算系统中使用虚拟机系列建模的容量管理 | |
CN106020927A (zh) | 一种云计算系统中任务调度与资源配置的通用方法 | |
EP2613257B1 (en) | Systems and methods for use in performing one or more tasks | |
CN111597044A (zh) | 任务调度方法、装置、存储介质及电子设备 | |
CN106802822A (zh) | 一种基于飞蛾算法的云数据中心认知资源调度方法 | |
CN105426247A (zh) | 一种hla联邦成员规划调度方法 | |
CN115952054A (zh) | 一种仿真任务资源管理方法、装置、设备及介质 | |
CN113407322B (zh) | 多终端的任务分配方法、装置、电子设备及可读存储介质 | |
Wu et al. | Dynamic idle time interval scheduling for hybrid cloud workflow management system | |
CN113608890A (zh) | 计算资源动态分配方法、系统、终端及存储介质 | |
Bogdanov et al. | Profiling Scheduler for Efficient Resource Utilization | |
CN114116221A (zh) | 功耗控制模式选择方法、装置、设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190503 |
|
WW01 | Invention patent application withdrawn after publication |