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

一种监控平台作业调度方法、装置、终端及存储介质与流程

2021-11-09 21:47:00 来源:中国专利 TAG:


1.本发明涉及监控平台作业调度领域,具体涉及一种监控平台作业调度方法、装置、终端及存储介质。


背景技术:

2.fifo是一种最早的经典调度算法,已经被广泛地用于各种调度系统。该算法的核心对所有的作业按照其提交的时间的先后顺序进行作业任务调度执行。然而在大规模数据中心时代,大量服务器资源通过物理基础设施监控平台统一管理,当资源量非常大的时候(超过1024节点),监控平台就需要增加硬件配置或者增加任务调度节点,来完成任务的调度,造成大量资源消耗。


技术实现要素:

3.为解决上述问题,本发明提供一种监控平台作业调度方法,在保证监控平台正常运行的情况下,有效减少硬件资源、另外单独扩增节点的资源消耗。
4.第一方面,本发明的技术方案提供一种监控平台作业调度方法,包括以下步骤:根据作业属性将作业维护到不同队列;在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级;其中,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业属性和作业资源限制。
5.进一步地,所述根据作业属性将作业维护到不同队列,具体为:根据作业类型将作业维护到不同队列。
6.进一步地,在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级,具体为根据以下公式计算剩余各个作业的优先级:作业优先级=作业当前优先级*作业排队时间因子 作业当前调整权重值*调整权重因子 作业所在队列大小*作业大小因子 作业类型值*队列类型因子 作业资源限制值*资源限制因子 作业优先级偏移值;其中,作业排队时间因子=作业已排队时间/作业最大可排队时间;调整权重因子=作业当前调整权重值/当前优先级最高作业的当前调整权重值;作业大小因子=作业请求所需最小运行空间/当前优先级最高作业所需最小运行空间;队列类型因子=作业所在队列的队列优先级/当前优先级最高作业所在队列的队列优先级;资源限制因子=作业当前资源限制值/当前优先级最高作业的当前资源限制值。
7.进一步地,作业优先级偏移值在提交或修改作业时指定。
8.进一步地,该方法还包括以下步骤:初始时,根据作业参数计算各个作业优先级。
9.进一步地,该方法还包括以下步骤:
初始时,为作业进行初始值配置,初始值包括作业最大可排队时间、作业初始调整权重值、作业请求所需最小运行空间、作业类型值和作业初始资源限制值。
10.进一步地,该方法还包括以下步骤:在作业执行过程中,若处于该正在执行的作业处于触发条件等待触发状态,则检测下一个待执行作业所需执行时间;若下一个待执行作业所需执行时间小于阈值,则在正在执行的作业处于触发条件等待触发状态下,执行下一个待执行作业。
11.第二方面,本发明提供一种监控平台作业调度装置,包括,队列维护模块:根据作业属性将作业维护到不同队列;优先级调整模块:在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级;其中,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业属性和作业资源限制。
12.第三方面,本发明的技术方案提供一种终端,包括:处理器;用于存储处理器的执行指令的存储器;其中,所述处理器被配置为执行上述任一项所述的方法。
13.第四方面,本发明的技术方案提供一种存储有计算机程序的计算机可读存储介质,该程序被处理器执行时实现如上述任一项所述的方法。
14.本发明提供的一种监控平台作业调度方法、装置、终端及存储介质,首先根据作业属性将作业维护到不同队列,之后在在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级,及实现作业优先级的动态调整,其中,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业属性和作业资源限制,即根据这些作业参数动态调整作业的优先级,选择合适的作业优先执行,而不是仅按提交时间进行执行,及时在作业量较大的情况下,也可优化作业执行队列,使具备执行条件、需尽快执行的作业优先执行等,无需增加硬件资源、另外单独扩增节点等,在保证监控平台正常运行的情况下,动态优化执行队列,有效减少资源消耗。
附图说明
15.以下对本发明涉及的英文术语进行解释:fifo:first in first out,先进先出。
16.为了更清楚的说明本技术实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1是本发明实施例一提供的一种监控平台作业调度方法流程示意图;图2是本发明具体实施例一所提供的一具体实施例方法流程示意图;图3是本发明具体实施例二提供的一种监控平台作业调度装置结构示意图;图4为本发明实施例三提供的一种终端的结构示意图。
具体实施方式
18.为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式对本技术作进一步的详细说明。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
19.fifo是一种最早的经典调度算法,已经被广泛地用于各种调度系统。该算法的核心对所有的作业按照其提交的时间的先后顺序进行作业任务调度执行。然而在大规模数据中心时代,大量服务器资源通过物理基础设施监控平台统一管理,当资源量非常大的时候(超过1024节点),监控平台就需要增加硬件配置或者增加任务调度节点,来完成任务的调度,造成大量资源消耗。
20.因此,本实施例提供一种监控平台作业调度方法,通过实时计算作业优先级,优化执行队列,使具备执行条件、需尽快执行的作业优先执行等,无需增加硬件资源、另外单独扩增节点等,在保证监控平台正常运行的情况下,动态优化执行队列,有效减少资源消耗。
21.如图1所示,本实施例提供的一种监控平台作业调度方法,包括以下步骤。
22.s1,根据作业属性将作业维护到不同队列。
23.考虑到不同属性的任务缓急程度不同,因此将作业根据作业属性维护的不同队列。
24.在一些具体实施例中,具体根据作业类型将作业维护到不同队列,即本实施例的作业属性具体为作业类型,一个队列代表维护一种类型的作业,不同队列有不同优先级,比如硬件资产采集任务优先级低、性能数据采集任务优先级高、监控巡检任务(周期性优先级动态调整)等。
25.s2,在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级;其中,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业属性和作业资源限制。
26.需要说明的是,优先级越高的作业越优先执行。
27.本实施例在某个(每次只执行一个作业的串行调度)作业或某几个(每次执行多个作业的并行调度)作业进行执行时,会对剩余的等待执行的所有作业重新计算优先级,对剩余的作业进行排队,形成合理的执行布局。具体地,根据作业参数对作业进行优先级计算,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业属性和作业资源限制。其中,作业调整权重限定基础优先级,初始时根据需要设定,例如某个任务需要较早执行,则将作业调整权重设定较大,若需要较晚执行,则将作业调整权重设定较小。作业所在队列大小是指队列中作业的个数。作业资源限制是指作业执行所需cpu、内存、网络、存储、键盘(例如某个作业需要人为输入yes,则应保证键盘为空闲状态才可执行)。
28.根据上述这些作业参数实时动态调整作业的优先级,可优化执行队列,使具备执行条件、需尽快执行的作业优先执行等。
29.以串行执行为例,例如有a、b、c、d四个队列,当前a队列中优先级从高到低分别有a1、a2、a3、a4四个作业,b队列中优先级从高到低分别有b1、b2、b3、b4、b5五个作业,c队列中优先级从高到低分别有c1、c2、c3三个作业,d队列中优先级从高到低分别有d1、d2、d3、d4四个作业。且a1、b1、c1和d1中c1优先级最高,则执行完当前正在执行的作业后,再执行c1,在c1执行过程中对剩余的其他作用重新排序。
30.以四通道并行执行为例,例如例如有a、b、c、d四个队列,当前a队列中优先级从高到低分别有a1、a2、a3、a4四个作业,b队列中优先级从高到低分别有b1、b2、b3、b4、b5五个作业,c队列中优先级从高到低分别有c1、c2、c3三个作业,d队列中优先级从高到低分别有d1、d2、d3、d4四个作业。其中这些作业中优先级最高的四个作业为a1、a2、c1、d1,则执行完当前正在执行的四个作业后,再执行a1、a2、c1、d1这四个作业,在执行a1、a2、c1、d1执行过程中对剩余的其他作用重新排序。
31.本实施例提供的一种监控平台作业调度方法,首先根据作业属性将作业维护到不同队列,之后在在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级,及实现作业优先级的动态调整,其中,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业类型和作业资源限制,即根据这些作业参数动态调整作业的优先级,选择合适的作业优先执行,而不是仅按提交时间进行执行,及时在作业量较大的情况下,也可优化作业执行队列,使具备执行条件、需尽快执行的作业优先执行等,无需增加硬件资源、另外单独扩增节点等,在保证监控平台正常运行的情况下,动态优化执行队列,有效减少资源消耗。
32.在一些具体实施例中,在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级,具体为根据以下公式计算剩余各个作业的优先级,需要说明的是,本实施例的作业参数包括作业属性,作业属性具体取为作业类型:作业优先级=作业当前优先级*作业排队时间因子 作业当前调整权重值*调整权重因子 作业所在队列大小*作业大小因子 作业类型值*队列类型因子 作业资源限制值*资源限制因子 作业优先级偏移值。
33.其中,作业排队时间因子=作业已排队时间/作业最大可排队时间;调整权重因子=作业当前调整权重值/当前优先级最高作业的当前调整权重值;作业大小因子=作业请求所需最小运行空间/当前优先级最高作业所需最小运行空间;队列类型因子=作业所在队列的队列优先级/当前优先级最高作业所在队列的队列优先级;资源限制因子=作业当前资源限制值/当前优先级最高作业的当前资源限制值。
34.在一些具体实施例中,作业优先级偏移值在提交或修改作业时指定,具体取值为介于

16383和16384之间的整数。
35.需要说明的是,下一次计算作业资源限制值时,该作业资源限制值为上一次所计算的作业资源限制值*资源限制因子。下一次计算作业当前调整权重值时,该作业当前调整权重值为上一次所计算的作业当前调整权重值*调整权重因子。
36.根据上述公式在不影响正在运行作业的前提下,重新调整作业优先级,调整作业优先级可实现如下的功能:1)满足资源限制的作业,优先调度,比如该任务优先级高,且具备执行条件,则优先调度执行;2)如果不调整优先级,下一个作业可能由于内存资源需求没有满足无法执行,该策略通过优化优先级则会使可下一个执行作业可使用已有的空闲资源,且其执行不会影响该作业执行时间的作业。换句话说,该调度策略允许在不影响高优先级作业的最早启动时间的条件下,将低优先级的作业提前运行。3)该调度策略的重要条件是作业的运行时间限制,因此用户在提交作业时提供的作业运行时间估计对该作业能否被回调具有非常重要的影响。监控平台会周期性地按优先级顺序扫描作业队列,寻找回调的
时机,根据监控作业优先级动态调整。
37.在一些具体实施例中,初始时,同样根据作业参数计算各个作业优先级,即根据上述公式进行计算。相应的,在初始时,为作业进行初始值配置,初始值包括作业最大可排队时间、作业初始调整权重值、作业请求所需最小运行空间、作业类型值和作业初始资源限制值。
38.在一些具体实施例中,为提高执行效率,还执行以下步骤:在作业执行过程中,若处于该正在执行的作业处于触发条件等待触发状态,则检测下一个待执行作业所需执行时间;若下一个待执行作业所需执行时间小于阈值,则在正在执行的作业处于触发条件等待触发状态下,执行下一个待执行作业。
39.即在正在执行作业等待触发条件(如键盘输入段)的时间内,执行下一个作业,需要说明的是,该下一个作业执行时间较短,以免影响正在执行作业的执行。另外,该下一个作业是重新调整优先级有所选出的下一个作业,在未重新调整优先级之前,可不执行上述步骤。
40.以下提供一具体实施例,以对本发明进一步说明,如图2所示,本具体实施例包括以下步骤。
41.s101,初始时,根据作业类型将作业维护到不同队列。
42.s102,为作业进行初始值配置,初始值包括作业最大可排队时间、作业初始调整权重值、作业请求所需最小运行空间、作业类型值和作业初始资源限制值。
43.s103,根据所配置的初始值根据以下公式计算各个作业优先级。
44.作业优先级=作业当前优先级*作业排队时间因子 作业当前调整权重值*调整权重因子 作业所在队列大小*作业大小因子 作业类型值*队列类型因子 作业资源限制值*资源限制因子 作业优先级偏移值。
45.其中,作业排队时间因子=作业已排队时间/作业最大可排队时间;调整权重因子=作业当前调整权重值/当前优先级最高作业的当前调整权重值;作业大小因子=作业请求所需最小运行空间/当前优先级最高作业所需最小运行空间;队列类型因子=作业所在队列的队列优先级/当前优先级最高作业所在队列的队列优先级;资源限制因子=作业当前资源限制值/当前优先级最高作业的当前资源限制值。
46.s104,在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级;具体根据以下公式计算剩余各个作业的优先级:作业优先级=作业当前优先级*作业排队时间因子 作业当前调整权重值*调整权重因子 作业所在队列大小*作业大小因子 作业类型值*队列类型因子 作业资源限制值*资源限制因子 作业优先级偏移值。
47.其中,作业排队时间因子=作业已排队时间/作业最大可排队时间;调整权重因子=作业当前调整权重值/当前优先级最高作业的当前调整权重值;作业大小因子=作业请求所需最小运行空间/当前优先级最高作业所需最小运行空间;
队列类型因子=作业所在队列的队列优先级/当前优先级最高作业所在队列的队列优先级;资源限制因子=作业当前资源限制值/当前优先级最高作业的当前资源限制值。
48.s105,在作业执行过程中,若处于该正在执行的作业处于触发条件等待触发状态,则检测下一个待执行作业所需执行时间;若下一个待执行作业所需执行时间小于阈值,则在正在执行的作业处于触发条件等待触发状态下,执行下一个待执行作业。
49.实施例二本实施例提供一种监控平台作业调度装置,用于实现前述的监控平台作业调度方法。
50.如图3所示,本实施例提供的一种监控平台作业调度装置,包括以下功能模块。
51.队列维护模块101:根据作业属性将作业维护到不同队列;优先级调整模块102:在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级;其中,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业属性和作业资源限制。
52.在一些具体实施例中,队列维护模块101具体根据作业类型将作业维护到不同队列。
53.在一些具体实施例中,优先级调整模块102根据作业参数实时计算剩余各个作业的优先级,具体为根据以下公式计算剩余各个作业的优先级:作业优先级=作业当前优先级*作业排队时间因子 作业当前调整权重值*调整权重因子 作业所在队列大小*作业大小因子 作业类型值*队列类型因子 作业资源限制值*资源限制因子 作业优先级偏移值。
54.其中,作业排队时间因子=作业已排队时间/作业最大可排队时间;调整权重因子=作业当前调整权重值/当前优先级最高作业的当前调整权重值;作业大小因子=作业请求所需最小运行空间/当前优先级最高作业所需最小运行空间;队列类型因子=作业所在队列的队列优先级/当前优先级最高作业所在队列的队列优先级;资源限制因子=作业当前资源限制值/当前优先级最高作业的当前资源限制值。
55.在一些具体实施例中,作业优先级偏移值在提交或修改作业时指定。
56.在一些具体实施例中,优先级调整模块102还用于在初始时根据作业参数计算各个作业优先级。
57.相应地,该装置还包括初始值配置模块103,用于在初始时为作业进行初始值配置。包括初始值包括作业最大可排队时间、作业初始调整权重值、作业请求所需最小运行空间、作业类型值和作业初始资源限制值。
58.在一些具体实施例中,该装置还包括以下功能模块:执行时间检测模块104:在作业执行过程中,若处于该正在执行的作业处于触发条件等待触发状态,则检测下一个待执行作业所需执行时间;作业执行模块105:若下一个待执行作业所需执行时间小于阈值,则在正在执行的作业处于触发条件等待触发状态下,执行下一个待执行作业。
59.本实施例的监控平台作业调度装置用于实现前述的监控平台作业调度方法,因此该装置中的具体实施方式可见前文中的监控平台作业调度方法的实施例部分,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。
60.本发明提供的一种监控平台作业调度装置,首先根据作业属性将作业维护到不同队列,之后在在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级,及实现作业优先级的动态调整,其中,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业类型和作业资源限制,即根据这些作业参数动态调整作业的优先级,选择合适的作业优先执行,而不是仅按提交时间进行执行,及时在作业量较大的情况下,也可优化作业执行队列,使具备执行条件、需尽快执行的作业优先执行等,无需增加硬件资源、另外单独扩增节点等,在保证监控平台正常运行的情况下,动态优化执行队列,有效减少资源消耗。
61.实施例三图4为本发明实施例提供的一种终端装置300的结构示意图,该终端装置300可以用于执行本发明实施例提供的监控平台作业调度方法。
62.具体地,该终端装置300至少执行以下步骤:s1,根据作业属性将作业维护到不同队列;s2,在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级;其中,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业类型和作业资源限制。
63.其中,该终端装置300可以包括:处理器310、存储器320及通信单元330。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
64.其中,该存储器320可以用于存储处理器310的执行指令,存储器320可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。当存储器320中的执行指令由处理器310执行时,使得终端300能够执行以下上述方法实施例中的部分或全部步骤。
65.处理器310为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器320内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(integrated circuit,简称ic) 组成,例如可以由单颗封装的ic 所组成,也可以由连接多颗相同功能或不同功能的封装ic而组成。举例来说,处理器310可以仅包括中央处理器(central processing unit,简称cpu)。在本发明实施方式中,cpu可以是单运算核心,也可以包括多运算核心。
66.通信单元330,用于建立通信信道,从而使所述存储终端可以与其它终端进行通信。接收其他终端发送的用户数据或者向其他终端发送用户数据。
67.实施例四本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的各实施例中的部分或全部步骤。
68.具体地,该程序执行时至少执行以下步骤:
s1,根据作业属性将作业维护到不同队列;s2,在作业执行过程中,根据作业参数实时计算剩余各个作业的优先级;其中,作业参数包括作业排队时间、作业调整权重、作业所在队列大小、作业类型和作业资源限制。
69.所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read

only memory,简称:rom)或随机存储记忆体(英文:random access memory,简称:ram)等。
70.本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。
71.本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
72.在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
73.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
74.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
75.以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。
再多了解一些

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

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

相关文献