CN112527482A - 基于移动边缘云平台的任务管理方法及系统 - Google Patents
基于移动边缘云平台的任务管理方法及系统 Download PDFInfo
- Publication number
- CN112527482A CN112527482A CN202011471811.1A CN202011471811A CN112527482A CN 112527482 A CN112527482 A CN 112527482A CN 202011471811 A CN202011471811 A CN 202011471811A CN 112527482 A CN112527482 A CN 112527482A
- Authority
- CN
- China
- Prior art keywords
- task
- processed
- processor
- time
- processing
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开提供了一种基于移动边缘云平台的任务管理方法,该移动边缘云平台包括多个任务处理机,该任务管理方法包括:获取当前接收到的待处理任务的任务运算量和任务期望完成时间;根据各任务处理机分别对应的当前任务窗口大小、所述待处理任务的任务运算量和任务期望完成时间,确定出目标任务处理机;将所述待处理任务分配给所述目标任务处理机进行处理。本公开还提供了一种任务管理系统、电子设备和计算机可读介质。
Description
技术领域
本公开涉及云计算、云平台等互联网技术领域,特别涉及一种基于移动边缘云平台的任务管理方法及系统、电子设备、计算机可读介质。
背景技术
在移动边缘云场景下,很多处理任务对时延有较高的要求,如果出现较多任务的处理时延超过完成时间要求,则会导致相关范围内功能不可用的现象。
而现有的任务分配方法,通常通过将任务分为不同的种类,每类任务具有相似的属性,根据任务的类别,选择节点进行任务分配。然而,现有的任务分配方法对于实时任务无法提供时延保证,尤其是节点服务器负载突然增加、减少或执行过程中出现不确定因素造成执行任务延误时,无法进行动态调整。
发明内容
本公开旨在至少解决现有技术中存在的技术问题之一,提供一种基于移动边缘云平台的任务管理方法及系统、电子设备、计算机可读介质。
第一方面,本公开实施例提供一种基于移动边缘云平台的任务管理方法,所述移动边缘云平台包括多个任务处理机,所述任务管理方法包括:
获取当前接收到的待处理任务的任务运算量和任务期望完成时间;
根据各任务处理机分别对应的当前任务窗口大小、所述待处理任务的任务运算量和任务期望完成时间,确定出目标任务处理机;
将所述待处理任务分配给所述目标任务处理机进行处理。
在一些实施例中,所述根据各任务处理机分别对应的当前任务窗口大小、所述待处理任务的任务运算量和任务期望完成时间,确定出目标任务处理机,包括:
比较各所述任务处理机的当前任务窗口大小和所述待处理任务的任务运算量;
若存在一个所述任务处理机的当前任务窗口大小大于或等于所述待处理任务的任务运算量,则将该任务处理机确定为所述目标任务处理机;
若存在多个所述任务处理机的当前任务窗口大小均大于或等于所述待处理任务的任务运算量,则从该多个所述任务处理机中确定出一个所述任务处理机,以作为所述目标任务处理机;
若所有所述任务处理机的当前任务窗口大小均小于所述待处理任务的任务运算量,则创建一个新任务处理机,以作为所述目标任务处理机。
在一些实施例中,所述若存在多个所述任务处理机的当前任务窗口大小均大于或等于所述待处理任务的任务运算量,则从该多个所述任务处理机中确定出一个所述任务处理机,以作为所述目标任务处理机,包括:
针对该多个所述任务处理机中的每一个任务处理机,计算该任务处理机处理所述待处理任务时的预计完成时间;
从对应的所述预计完成时间小于或等于所述任务期望完成时间的任务处理机中,确定出预计完成时间最小的任务处理机,以作为所述目标任务处理机。
在一些实施例中,所述针对该多个所述任务处理机中的每一个任务处理机,计算该任务处理机处理所述待处理任务时的预计完成时间,包括:
针对该多个所述任务处理机中的每一个任务处理机,确定该任务处理机的任务处理队列中各已分配任务的任务运算量;
根据各已分配任务的任务运算量分别与该任务处理机对应的预设单位时间运算量的比值之和,计算出将所述待处理任务分配给该任务处理机时所需的处理等待时间;
根据所述待处理任务的任务运算量和所述预设单位时间运算量的比值,计算该任务处理机处理所述待处理任务所需的处理时间;
根据所述处理等待时间和所述处理时间之和,计算出该任务处理机处理所述待处理任务时的预计完成时间。
在一些实施例中,所述将所述待处理任务分配给所述目标任务处理机进行处理之后,还包括:
计算所述待处理任务所占用的任务窗口大小,所述待处理任务所占用的任务窗口大小为所述待处理任务的任务运算量与预设的单位任务运算量的比值;
根据所述目标任务处理机的当前任务窗口大小和所述待处理任务所占用的任务窗口大小的差值,更新所述目标任务处理机的当前任务窗口大小。
在一些实施例中,所述将所述待处理任务分配给所述目标任务处理机进行处理之后,还包括:
针对每个任务处理机,监测该任务处理机的当前任务处理队列中当前已分配任务的实际完成时间;
获取该当前已分配任务的预计完成时间;
计算该当前已分配任务的实际完成时间与预计完成时间的时间差;
判断所述时间差的绝对值是否大于或等于预设时间阈值;
在所述时间差小于0且其绝对值大于或等于预设时间阈值的情形下,根据第一预设算法计算该时间差对应的第一任务运算量;
根据该任务处理机的当前任务窗口大小与所述第一任务运算量之和,更新该任务处理机的当前任务窗口大小;
在所述时间差大于0且其绝对值大于或等于预设时间阈值的情形下,根据第二预设算法计算该时间差对应的第二任务运算量;
根据该任务处理机的当前任务窗口大小与所述第二任务运算量的差值,更新该任务处理机的当前任务窗口大小。
第二方面,本公开实施例提供了一种任务管理系统,该系统应用于移动边缘云平台,所述移动边缘云平台包括多个任务处理机,该系统包括:
获取模块,用于获取当前接收到的待处理任务的任务运算量和任务期望完成时间;
目标确定模块,用于根据各任务处理机分别对应的当前任务窗口大小、所述待处理任务的任务运算量和任务期望完成时间,确定出目标任务处理机;
分配模块,用于将所述待处理任务分配给所述目标任务处理机进行处理。
第三方面,本公开实施例提供了一种电子设备,该电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的一个或多个指令,一个或多个所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的任务管理方法。
第四方面,本公开实施例提供了一种计算机可读介质,该计算机可读介质上存储有计算机程序,其中,所述计算机程序被执行时实现如上所述的任务管理方法。
本公开实施例所提供的基于移动边缘云平台的任务管理方法及系统、电子设备、计算机可读介质的技术方案,根据任务的运算量和完成时间要求分配合适的任务处理机,从而有效保证了任务的时延完成要求,提高了任务处理的效率。
附图说明
图1为本公开实施例提供的一种基于移动边缘云平台的任务管理方法的流程图;
图2为图1中步骤2的一种具体实现方式的流程图;
图3为图2中步骤23的一种具体实施方式的流程图;
图4为图3中步骤231的一种具体实施方式的流程图;
图5为本公开实施例提供的另一种任务管理方法的流程图;
图6为本公开实施例提供的又一种任务管理方法的流程图;
图7为本公开实施例提供的一种任务管理系统的结构示意图;
图8为本公开实施例提供的一种电子设备的组成框图。
具体实施方式
为使本领域的技术人员更好地理解本公开的技术方案,下面结合附图对本公开提供的基于移动边缘云平台的任务管理方法及系统、电子设备、计算机可读介质进行详细描述。
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。
在不冲突的情况下,本公开各实施例及实施例中的各特征可相互组合。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、组件和/或其群组。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
图1为本公开实施例提供的一种基于移动边缘云平台的任务管理方法的流程图。
如图1所示,本公开实施例提供了一种基于移动边缘云平台的任务管理方法,该移动边缘云平台包括多个任务处理机,任务处理机为虚拟机,该任务管理方法包括:
步骤1、获取当前接收到的待处理任务的任务运算量和任务期望完成时间。
步骤2、根据各任务处理机分别对应的当前任务窗口大小、待处理任务的任务运算量和任务期望完成时间,确定出目标任务处理机。
步骤3、将该待处理任务分配给目标任务处理机进行处理。
本实施例所提供的基于移动边缘云平台的任务管理方法,根据任务的运算量和完成时间要求分配合适的任务处理机,从而有效保证了任务的时延完成要求,提高了任务处理的效率。
在本公开实施例中,在步骤11中,当有新任务(即当前接收到的待处理任务)到达时,通过任务分析器对该待处理任务进行解析和分析,根据该待处理任务所需计算的复杂程度和需要处理的数据量大小(如10MB),估算出该待处理任务的任务运算量。
作为示例,假设通过最简单的基本运算能力处理大小为预设单位大小(如1MB、1KB、1GB等)的数据量的运算量为预设的单位任务运算量C0,通过任务分析器对该待处理任务进行解析和分析,以确定该待处理任务所需的运算能力相对基本运算能力的运算难度倍数和所需处理的数据量大小相对于基本运算的数据量倍数,根据该待处理任务对应的运算难度倍数、数据量倍数和预设的单位任务运算量,从而估算出该待处理任务的任务运算量Cp。
本公开实施例对于待处理任务的任务运算量的获取方式不作限制,例如还可以预先建立任务所需的资源量和任务运算量的对应关系,基于待处理任务所需的资源量(计算资源量、存储资源量、网络资源量)和预先建立的对应关系,确定待处理任务的任务运算量Cp。
在本公开实施例中,在步骤1中,任务期望完成时间是指任务发布者发布待处理任务时预先设定的完成时间要求(即任务完成时间期限),任务发布者例如是主机(CPU)、服务器等。在步骤1,通过对待处理任务进行解析,即可获得该待处理任务的任务期望完成时间T。
图2为图1中步骤2的一种具体实现方式的流程图,在一些实施例中,根据各任务处理机分别对应的当前任务窗口大小、待处理任务的任务运算量和任务期望完成时间,进行任务的分配调度。具体地,如图2所示,步骤2可以进一步包括:步骤21~步骤24。
步骤21、比较各任务处理机的当前任务窗口大小和待处理任务的任务运算量。
在本公开实施例中,预先根据各台任务处理机的计算资源(CPU)大小、存储资源(内存)大小、网络资源(带宽)大小计算各台任务处理机的初始任务窗口大小Q,任务窗口大小为任务分配的依据和度量,任务窗口大小表示该任务处理机可承载的任务运算量的总额,计算能力越强的任务处理机的任务窗口大小越大,其中任务处理机的任务窗口大小的表示形式可以是上述预设的单位任务运算量C0的倍数。相应的,可以理解的是,当前任务窗口大小是指任务处理机当前能够处理多少个单位任务运算量C0,即当前能够处理的单位任务运算量的个数。
在本公开实施例中,只有任务运算量小于任务窗口大小的任务才能指派给该任务处理机,每给任务处理机分配一个任务,其任务窗口大小减小相应的量,当任务窗口大小减少到0时,暂时不再给该任务处理机分配任务,相应的,该任务处理机每完成一个任务则对其任务窗口大小增加相应的量。
步骤22、若存在一个任务处理机的当前任务窗口大小大于或等于待处理任务的任务运算量,则将该任务处理机确定为目标任务处理机,并跳转至步骤3。
在步骤22中,对于多个任务处理机,若当前只有一个任务处理机的当前任务窗口大小大于或等于待处理任务的任务运算量,则将该任务处理机确定为目标任务处理机。
步骤23、若存在多个任务处理机的当前任务窗口大小均大于或等于待处理任务的任务运算量,则从该多个任务处理机中确定出一个任务处理机,以作为目标任务处理机,并跳转至步骤3。
步骤24、若所有任务处理机的当前任务窗口大小均小于待处理任务的任务运算量,则创建一个新任务处理机,以作为目标任务处理机,并跳转至步骤3。
其中,创建新任务处理机时,为该新任务处理机配置相应的资源量,并确定该新任务处理机的初始任务窗口大小,以使该新任务处理机的初始任务窗口大小至少满足(即大于或等于)待处理任务的任务运算量。
图3为图2中步骤23的一种具体实施方式的流程图,如图3所示,在一些实施例中,根据待处理任务的任务期望完成时间和各任务处理机的预计可完成待处理任务的时间,确定出目标任务处理机。具体地,步骤23可以进一步包括:
步骤231、针对该多个任务处理机中的每一个任务处理机,计算该任务处理机处理待处理任务时的预计完成时间。
其中,在步骤231中,该多个任务处理机即为上述当前任务窗口大小均大于或等于待处理任务的任务运算量的多个任务处理机,该任务处理机处理待处理任务时的预计完成时间即指该待处理任务分配给该任务处理机时,预计该待处理任务的完成时间。
步骤232、从对应的预计完成时间小于或等于任务期望完成时间的任务处理机中,确定出预计完成时间最小的任务处理机,以作为目标任务处理机。
作为示例,假设针对该待处理任务,该多个任务处理机分别对应的预计完成时间分别为1s、2s、3s、4s、5s,而该待处理任务的任务期望完成时间为3s,则只有预计完成时间为1s、2s、3s的任务处理机满足条件,因此,在步骤232中,从预计完成时间分别为1s、2s、3s的三个任务处理机中,选择出预计完成时间最小(短)的任务处理机,即预计完成时间为1s的任务处理机,以作为目标任务处理机。
在一些实施例中,若所有任务处理机对应的预计完成时间均不能满足(即均大于)待处理任务的任务期望完成时间,则可以选择预计完成时间最小(短)的任务处理机作为目标任务处理机。
图4为图3中步骤231的一种具体实施方式的流程图,在一些实施例中,根据该待处理任务预计在任务处理机上的等待(排队)时间和该任务处理机预计处理该待处理任务所需花费的时间(即处理时间),计算该任务处理机处理待处理任务时的预计完成时间。具体地,如图4所示,步骤231可以进一步包括:
步骤2311、针对该多个任务处理机中的每一个任务处理机,确定该任务处理机的任务处理队列中各已分配任务的任务运算量。
在本公开实施例中,向任务处理机分配的任务将缓存至该任务处理机的任务处理队列,以等待被任务处理机处理。因此,可以理解的是,在步骤2311中,该任务处理机的任务处理队列中各已分配任务是指已分配给该任务处理机的,当前缓存在该任务处理机的任务处理队列中等待被处理的任务。
在步骤2311中,该任务处理机的任务处理队列中各已分配任务的任务运算量可以根据上述确定待处理任务的任务运算量的方式确定,此处不再赘述。
步骤2312、根据各已分配任务的任务运算量分别与该任务处理机对应的预设单位时间运算量的比值之和,计算出将待处理任务分配给该任务处理机时所需的处理等待时间。
具体地,在步骤2312中,首先计算该任务处理机的任务处理队列中各已分配任务的预计处理时间,已分配任务的预计处理时间为该已分配任务的任务运算量与该任务处理机对应的预设单位时间运算量的比值,预设单位时间运算量是指该任务处理机在单位时间内能够处理的任务运算量,预设单位时间运算量的具体取值可以根据该任务处理机的实际情况确定,本公开实施例对此不作限制。
在步骤2312中,根据该任务处理机的任务处理队列中各已分配任务的预计处理时间的总和,即根据各已分配任务的任务运算量分别与该任务处理机对应的预设单位时间运算量的比值之和,确定待处理任务分配给该任务处理机时所需的处理等待时间。可以理解的是,该待处理任务分配给该任务处理机时所需的处理等待时间是指该待处理任务分配给该任务处理机时预计等待被处理的时间。
作为示例,假设该任务处理机的任务处理队列中各已分配任务的任务运算量分别为:{C1,C2,C3,…,Cn},Cn表示第n个已分配任务的任务运算量,n根据该任务处理机的任务处理队列中的已分配任务的数量确定,则待处理任务分配给该任务处理机时所需的处理等待时间为:
其中,Tj表示第j个任务处理机对应的处理等待时间,Vj表示第j个任务处理机对应的预设单位时间运算量,Ci表示第j个任务处理机的任务处理队列中第i个已分配任务的任务运算量。
步骤2313、根据待处理任务的任务运算量和预设单位时间运算量的比值,计算该任务处理机处理待处理任务所需的处理时间。
步骤2314、根据处理等待时间和处理时间之和,计算出该任务处理机处理待处理任务时的预计完成时间。
具体地,该任务处理机处理待处理任务时的预计完成时间为:
其中,Tpj表示第j个任务处理机处理该待处理任务时的预计完成时间,Tj表示该待处理任务分配给第j个任务处理机时所需的处理等待时间,表示第j个任务处理机处理该待处理任务所需的处理时间,j=1,2,3,……,n。
图5为本公开实施例提供的另一种任务管理方法的流程图。
如图5所示,本公开实施例还提供了另一种任务管理方法,该任务管理方法与上述的任务管理方法的区别在于,在步骤3之后,该任务管理方法还包括:
步骤4、计算待处理任务所占用的任务窗口大小,待处理任务所占用的任务窗口大小为待处理任务的任务运算量与预设的单位任务运算量的比值。
如前所述,预设的单位任务运算量C0为通过最简单的基本运算能力处理大小为预设单位大小(如1MB、1KB、1GB等)的数据量的运算量,任务处理机的任务窗口大小的表示形式为预设的单位任务运算量C0的倍数。因此,在步骤4中,通过待处理任务的任务运算量与预设的单位任务运算量的比值,能够得到待处理任务所占用的任务窗口大小。
步骤5、根据目标任务处理机的当前任务窗口大小和待处理任务所占用的任务窗口大小的差值,更新目标任务处理机的当前任务窗口大小。
具体地,根据公式:更新目标任务处理机的当前任务窗口大小。其中,表示更新后目标任务处理机的当前任务窗口大小,Qj表示更新前目标任务处理机的当前任务窗口大小,Cp表示待处理任务的任务运算量,C0表示预设的单位任务运算量,表示待处理任务所占用的任务窗口大小。
如前所述,在本公开实施例中,每给任务处理机分配一个任务,其任务窗口大小减小相应的量,当任务窗口大小减少到0时,暂时不再给该任务处理机分配任务,相应的,该任务处理机每完成一个任务则对其任务窗口大小增加相应的量。其中,该减小的量或增加的量可以根据任务的任务运算量与预设的单位任务运算量的比值确定,例如该减小的量或增加的量为任务的任务运算量与预设的单位任务运算量的比值。
因此,在一些实施例中,在步骤3之后,还可以进一步包括:针对每个任务处理机,每有一个在该任务处理机的当前任务处理队列中的已分配任务完成时,获取该已分配任务所占用的任务窗口大小,该已分配任务所占用的任务窗口大小为该已分配任务的任务运算量与预设的单位任务运算量的比值;根据该任务处理机的当前任务窗口大小和该已分配任务所占用的任务窗口大小之和,更新该任务处理机的当前任务窗口大小。
图6为本公开实施例提供的又一种任务管理方法的流程图。
本公开实施例还提供了一种任务管理方法,在一些实施例中,因运行环境的影响,任务处理机中实际任务的执行时间可能会提前或延后,为了实现对任务处理机的任务分配的动态调整,根据各任务处理机中实际任务的处理时间对各任务处理机的任务窗口大小进行调整,从而动态调整对各任务处理机的任务分配。
在一些实施例中,对于出现任务长时间超时的任务处理机,减小其实际任务窗口大小,从而减少对该任务处理机的任务分配;对于出现任务的处理时间提前较大的任务处理机,增加其实际任务窗口大小,从而增加对该任务处理机的任务分配。
具体地,如图6所示,该任务管理方法与上述的任务管理方法的区别在于,在步骤3之后,该任务管理方法还包括:
步骤6、针对每个任务处理机,监测该任务处理机的当前任务处理队列中当前已分配任务的实际完成时间。
具体地,通过任务监测器对任务处理机中实时任务执行情况进行监测,对于该任务处理机的当前任务处理队列中的当前已分配任务,监测该任务处理机的当前任务处理队列中当前已分配任务的实际完成时间。其中,可以理解的是,若该任务处理机为上述的目标任务处理机,则该任务处理机的当前任务处理队列中包含上述的待处理任务,在该任务处理机的当前任务处理队列中,上述的待处理任务作为一已分配任务。该任务处理机的当前任务处理队列中当前已分配任务是指按照任务处理队列中任务的先进先出顺序(进入队列的时间先后顺序)排在第一位的已分配任务,即该任务处理机即将处理的已分配任务。
换言之,在步骤6中,该任务处理机的当前任务处理队列中每个已分配任务,监测该已分配任务的实际完成时间,该已分配任务的实际完成时间可以理解为任务处理队列中顺序位于该已分配任务之前的所有已分配任务的实际任务处理时间,与该已分配任务的实际任务处理时间之和。
步骤7、获取该当前已分配任务的预计完成时间。
如前所述,待处理任务(新任务)的预计完成时间可以根据待处理任务预计的处理等待时间和预计的处理时间确定,该当前已分配任务的预计完成时间也可以是在该当前已分配任务被分配给该任务处理机之前预先确定,具体的预计完成时间的获取方式参见上述对待处理任务的预计完成时间的获取方式,此处不再赘述。
步骤8、计算该当前已分配任务的实际完成时间与预计完成时间的时间差。
假设该任务处理机的当前任务处理队列中各已分配任务的实际完成时间分别为:{t11,t12,t13,…,t1m},该任务处理机的当前任务处理队列中各已分配任务的预计完成时间分别为:{t21,t22,t23,…,t2m}。其中,t1m表示当前任务处理队列中第m个已分配任务的实际完成时间,t2m表示当前任务处理队列中第m个已分配任务的预计完成时间,m根据该任务处理机的当前任务处理队列中的已分配任务的数量确定。则在步骤8中,针对该任务处理机的当前任务处理队列中的第k(k=1,2,3,…,m)个已分配任务(当前已分配任务),该当前已分配任务的实际完成时间与预计完成时间的时间差为:Tk=t1k-t2k,t1k表示该第k个已分配任务的实际完成时间,t2k表示该第k个已分配任务的预计完成时间,Tk表示该第k个已分配任务的实际完成时间与预计完成时间的时间差。
例如,该第k个已分配任务的实际完成时间t1k为10秒,预计完成时间t2k为5秒,则时间差为5秒,表示该第k个已分配任务的实际完成时间比预计完成时间延迟了5秒,即该第k个已分配任务已超时完成。例如,该第k个已分配任务的实际完成时间t1k为5秒,预计完成时间t2k为10秒,则时间差为-5秒,表示该第k个已分配任务的实际完成时间比预计完成时间提前了5秒,即该第k个已分配任务已提前完成。
步骤9、判断该当前已分配任务的实际完成时间和预计完成时间的时间差的绝对值是否大于或等于预设时间阈值,若是则执行步骤10,否则不作进一步处理。
其中,预设时间阈值可以根据实际需要设置,例如可以设置为2秒、3秒、5秒等。在步骤9中,若判断出该当前已分配任务的实际完成时间和预计完成时间的时间差的绝对值大于或等于预设时间阈值,表示该当前已分配任务的实际完成时间和预计完成时间的时间差较大,对于后续任务的执行时间造成了较大的延误,因此需要对该任务处理机的当前任务窗口大小进行调整,执行步骤10;若判断出该当前已分配任务的实际完成时间和预计完成时间的时间差的绝对值小于预设时间阈值,表示该当前已分配任务的实际完成时间和预计完成时间的时间差较小,对于后续任务的执行影响较小,故可以不作进一步处理。
步骤10、判断该当前已分配任务的实际完成时间和预计完成时间的时间差小于或大于0,若小于则执行步骤11,若大于则执行步骤13。
在步骤10中,若该当前已分配任务的实际完成时间和预计完成时间的时间差小于0,表明该当前已分配任务提前完成,且提前的时间差大于或等于预设时间阈值,故执行步骤11。而若该当前已分配任务的实际完成时间和预计完成时间的时间差大于0,表明该当前已分配任务延迟完成,且延迟的时间差大于或等于预设时间阈值,故执行步骤13。
步骤11、在时间差小于0且其绝对值大于或等于预设时间阈值的情形下,根据第一预设算法计算该时间差对应的第一任务运算量。
在步骤11中,该时间差对应的第一任务运算量为该时间差的绝对值与预设单位时间对应的任务窗口大小的乘积。具体地,第一预设算法包括公式:Vj表示该任务处理机对应的预设单位时间运算量,C0表示预设的单位任务运算量,|k|表示时间差Tk的绝对值;表示单位时间能够处理的单位任务运算量的数量,也即单位时间对应的任务窗口大小。
步骤12、根据该任务处理机的当前任务窗口大小与第一任务运算量之和,更新该任务处理机的当前任务窗口大小,并结束流程。
在一些实施例中,在时间差小于0且其绝对值大于或等于预设时间阈值的情形下,表明该当前已分配任务提前完成,表示该任务处理机还能进行更多的运算量,故对该任务处理机的当前任务窗口大小进行调整,具体地,在步骤12中,根据该任务处理机的当前任务窗口大小与任务提前完成的时间差所对应的第一任务运算量之和,更新该任务处理机的当前任务窗口大小。
具体地,根据公式:更新该任务处理机的当前任务窗口大小。其中,表示更新后该任务处理机的当前任务窗口大小,Qj表示更新前该任务处理机的当前任务窗口大小,Vj表示该任务处理机对应的预设单位时间运算量,C0表示预设的单位任务运算量,|k|表示时间差Tk的绝对值;表示单位时间能够处理的单位任务运算量的数量,也即单位时间对应的任务窗口大小;表示时间差Tk对应的第一任务运算量。
步骤13、在时间差大于0且其绝对值大于或等于预设时间阈值的情形下,根据第二预设算法计算该时间差对应的第二任务运算量。
在步骤13中,该时间差对应的第二任务运算量为该时间差的绝对值的两倍与预设单位时间对应的任务窗口大小的乘积。具体地,第二预设算法包括公式:Vj表示该任务处理机对应的预设单位时间运算量,C0表示预设的单位任务运算量,|Tk|表示时间差的绝对值;表示单位时间能够处理的单位任务运算量的数量,也即单位时间对应的任务窗口大小。
步骤14、根据该任务处理机的当前任务窗口大小与第二任务运算量的差值,更新该任务处理机的当前任务窗口大小,并结束流程。
在一些实施例中,在时间差大于0且其绝对值大于或等于预设时间阈值的情形下,表明该当前已分配任务延迟完成,造成该任务处理机后续的任务也将延误,故对该任务处理机的当前任务窗口大小进行调整,以提高任务处理的稳定性,保证新任务的时延完成要求。具体地,在步骤14中,根据该任务处理机的当前任务窗口大小与任务延迟完成的时间差所对应的第二任务运算量的差值,更新该任务处理机的当前任务窗口大小。
具体地,根据公式:更新该任务处理机的当前任务窗口大小。其中,表示更新后该任务处理机的当前任务窗口大小,Qj表示更新前该任务处理机的当前任务窗口大小,Vj表示该任务处理机对应的预设单位时间运算量,C0表示预设的单位任务运算量,|k|表示时间差Tk的绝对值;表示单位时间能够处理的单位任务运算量的数量,也即单位时间对应的任务窗口大小;表示时间差Tk对应的第二任务运算量。
本公开实施例所提供的基于移动边缘云平台的任务管理方法,能够根据任务的任务运算量和完成时间要求分配合适的任务处理机,保证任务的时延完成要求,并能够根据任务的实际执行情况,动态调整各任务处理机的任务窗口大小,提高了系统的稳定性。
图7为本公开实施例提供的一种任务管理系统的结构示意图。
如图7所示,本公开实施例还提供了一种任务管理系统,该系统应用于移动边缘云平台,移动边缘云平台包括多个任务处理机,该任务管理系统300包括:获取模块301、目标确定模块302和分配模块303。
获取模块301用于获取当前接收到的待处理任务的任务运算量和任务期望完成时间;目标确定模块302用于根据各任务处理机分别对应的当前任务窗口大小、待处理任务的任务运算量和任务期望完成时间,确定出目标任务处理机;分配模块303用于将待处理任务分配给目标任务处理机进行处理。
在一些实施例中,该系统还包括任务窗口更新模块(图中未示出),任务窗口更新模块用于:计算待处理任务所占用的任务窗口大小,待处理任务所占用的任务窗口大小为待处理任务的任务运算量与预设的单位任务运算量的比值;根据目标任务处理机的当前任务窗口大小和待处理任务所占用的任务窗口大小的差值,更新目标任务处理机的当前任务窗口大小。
在一些实施例中,任务窗口更新模块还用于:针对每个任务处理机,监测该任务处理机的当前任务处理队列中当前已分配任务的实际完成时间;获取该当前已分配任务的预计完成时间;计算该当前已分配任务的实际完成时间与预计完成时间的时间差;判断时间差的绝对值是否大于或等于预设时间阈值;在时间差小于0且其绝对值大于或等于预设时间阈值的情形下,根据第一预设算法计算该时间差对应的第一任务运算量;根据该任务处理机的当前任务窗口大小与第一任务运算量之和,更新该任务处理机的当前任务窗口大小;在时间差大于0且其绝对值大于或等于预设时间阈值的情形下,根据第二预设算法计算该时间差对应的第二任务运算量;根据该任务处理机的当前任务窗口大小与第二任务运算量的差值,更新该任务处理机的当前任务窗口大小。
此外,本实施例所提供的任务管理系统300用于实现前述任一实施例所提供的任务管理方法,具体相关描述可参见前述任一实施例中的描述,此处不再赘述。
图8为本公开实施例提供的一种电子设备的组成框图,如图8所示,该电子设备包括:一个或多个处理器501;存储器502,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器501执行,使得一个或多个处理器501实现上述的任务管理方法;一个或多个I/O接口503,连接在处理器501与存储器502之间,配置为实现处理器501与存储器502的信息交互。
本公开实施例还提供了一计算机可读存储介质,其上存储有计算机程序,其中,该计算机程序被执行时实现前述的任务管理方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其他实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。
Claims (11)
1.一种基于移动边缘云平台的任务管理方法,其特征在于,所述移动边缘云平台包括多个任务处理机,所述任务管理方法包括:
获取当前接收到的待处理任务的任务运算量和任务期望完成时间;
根据各任务处理机分别对应的当前任务窗口大小、所述待处理任务的任务运算量和任务期望完成时间,确定出目标任务处理机;
将所述待处理任务分配给所述目标任务处理机进行处理。
2.根据权利要求1所述的任务管理方法,其特征在于,所述根据各任务处理机分别对应的当前任务窗口大小、所述待处理任务的任务运算量和任务期望完成时间,确定出目标任务处理机,包括:
比较各所述任务处理机的当前任务窗口大小和所述待处理任务的任务运算量;
若存在一个所述任务处理机的当前任务窗口大小大于或等于所述待处理任务的任务运算量,则将该任务处理机确定为所述目标任务处理机;
若存在多个所述任务处理机的当前任务窗口大小均大于或等于所述待处理任务的任务运算量,则从该多个所述任务处理机中确定出一个所述任务处理机,以作为所述目标任务处理机;
若所有所述任务处理机的当前任务窗口大小均小于所述待处理任务的任务运算量,则创建一个新任务处理机,以作为所述目标任务处理机。
3.根据权利要求2所述的任务管理方法,其特征在于,所述若存在多个所述任务处理机的当前任务窗口大小均大于或等于所述待处理任务的任务运算量,则从该多个所述任务处理机中确定出一个所述任务处理机,以作为所述目标任务处理机,包括:
针对该多个所述任务处理机中的每一个任务处理机,计算该任务处理机处理所述待处理任务时的预计完成时间;
从对应的所述预计完成时间小于或等于所述任务期望完成时间的任务处理机中,确定出预计完成时间最小的任务处理机,以作为所述目标任务处理机。
4.根据权利要求3所述的任务管理方法,其特征在于,所述针对该多个所述任务处理机中的每一个任务处理机,计算该任务处理机处理所述待处理任务时的预计完成时间,包括:
针对该多个所述任务处理机中的每一个任务处理机,确定该任务处理机的任务处理队列中各已分配任务的任务运算量;
根据各已分配任务的任务运算量分别与该任务处理机对应的预设单位时间运算量的比值之和,计算出将所述待处理任务分配给该任务处理机时所需的处理等待时间;
根据所述待处理任务的任务运算量和所述预设单位时间运算量的比值,计算该任务处理机处理所述待处理任务所需的处理时间;
根据所述处理等待时间和所述处理时间之和,计算出该任务处理机处理所述待处理任务时的预计完成时间。
5.根据权利要求1所述的任务管理方法,其特征在于,所述将所述待处理任务分配给所述目标任务处理机进行处理之后,还包括:
计算所述待处理任务所占用的任务窗口大小,所述待处理任务所占用的任务窗口大小为所述待处理任务的任务运算量与预设的单位任务运算量的比值;
根据所述目标任务处理机的当前任务窗口大小和所述待处理任务所占用的任务窗口大小的差值,更新所述目标任务处理机的当前任务窗口大小。
6.根据权利要求1所述的任务管理方法,其特征在于,所述将所述待处理任务分配给所述目标任务处理机进行处理之后,还包括:
针对每个任务处理机,监测该任务处理机的当前任务处理队列中当前已分配任务的实际完成时间;
获取该当前已分配任务的预计完成时间;
计算该当前已分配任务的实际完成时间与预计完成时间的时间差;
判断所述时间差的绝对值是否大于或等于预设时间阈值;
在所述时间差小于0且其绝对值大于或等于预设时间阈值的情形下,根据第一预设算法计算该时间差对应的第一任务运算量;
根据该任务处理机的当前任务窗口大小与所述第一任务运算量之和,更新该任务处理机的当前任务窗口大小;
在所述时间差大于0且其绝对值大于或等于预设时间阈值的情形下,根据第二预设算法计算该时间差对应的第二任务运算量;
根据该任务处理机的当前任务窗口大小与所述第二任务运算量的差值,更新该任务处理机的当前任务窗口大小。
9.一种任务管理系统,应用于移动边缘云平台,其特征在于,所述移动边缘云平台包括多个任务处理机,该系统包括:
获取模块,用于获取当前接收到的待处理任务的任务运算量和任务期望完成时间;
目标确定模块,用于根据各任务处理机分别对应的当前任务窗口大小、所述待处理任务的任务运算量和任务期望完成时间,确定出目标任务处理机;
分配模块,用于将所述待处理任务分配给所述目标任务处理机进行处理。
10.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的一个或多个指令,一个或多个所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的任务管理方法。
11.一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序被执行时实现如权利要求1-8中任一项所述的任务管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011471811.1A CN112527482A (zh) | 2020-12-14 | 2020-12-14 | 基于移动边缘云平台的任务管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011471811.1A CN112527482A (zh) | 2020-12-14 | 2020-12-14 | 基于移动边缘云平台的任务管理方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112527482A true CN112527482A (zh) | 2021-03-19 |
Family
ID=74999794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011471811.1A Withdrawn CN112527482A (zh) | 2020-12-14 | 2020-12-14 | 基于移动边缘云平台的任务管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527482A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190347A (zh) * | 2021-04-21 | 2021-07-30 | 武汉卓尔信息科技有限公司 | 一种边缘云系统及任务管理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6687257B1 (en) * | 1999-08-12 | 2004-02-03 | Rockwell Automation Technologies, Inc. | Distributed real-time operating system providing dynamic guaranteed mixed priority scheduling for communications and processing |
CN105740249A (zh) * | 2014-12-08 | 2016-07-06 | Tcl集团股份有限公司 | 一种大数据作业并行调度过程中的处理方法及其系统 |
CN111459645A (zh) * | 2020-04-22 | 2020-07-28 | 百度在线网络技术(北京)有限公司 | 一种任务调度方法、装置和电子设备 |
-
2020
- 2020-12-14 CN CN202011471811.1A patent/CN112527482A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6687257B1 (en) * | 1999-08-12 | 2004-02-03 | Rockwell Automation Technologies, Inc. | Distributed real-time operating system providing dynamic guaranteed mixed priority scheduling for communications and processing |
CN105740249A (zh) * | 2014-12-08 | 2016-07-06 | Tcl集团股份有限公司 | 一种大数据作业并行调度过程中的处理方法及其系统 |
CN111459645A (zh) * | 2020-04-22 | 2020-07-28 | 百度在线网络技术(北京)有限公司 | 一种任务调度方法、装置和电子设备 |
Non-Patent Citations (1)
Title |
---|
蒋维成等: "移动云计算中时延保证的任务分配方法", 《计算机工程与设计》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190347A (zh) * | 2021-04-21 | 2021-07-30 | 武汉卓尔信息科技有限公司 | 一种边缘云系统及任务管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10558498B2 (en) | Method for scheduling data flow task and apparatus | |
CN110727512B (zh) | 集群资源调度方法、装置、设备及储存介质 | |
CN106776005B (zh) | 一种面向容器化应用的资源管理系统及方法 | |
US10185688B2 (en) | Quality of service for internal I/Os using internal flow mechanism | |
US8756209B2 (en) | Computing resource allocation based on query response analysis in a networked computing environment | |
US10255114B2 (en) | Abnormality detection apparatus, control method, and program | |
CN109086135B (zh) | 资源伸缩方法、装置、计算机设备及存储介质 | |
US20170359271A1 (en) | Multi-tenant based system and method for providing services | |
US11093352B2 (en) | Fault management in NVMe systems | |
CN108205469B (zh) | 一种基于MapReduce的资源分配方法及服务器 | |
US10733015B2 (en) | Prioritizing applications for diagonal scaling in a distributed computing environment | |
US11095531B2 (en) | Service-aware serverless cloud computing system | |
US10216530B2 (en) | Method for mapping between virtual CPU and physical CPU and electronic device | |
US10733022B2 (en) | Method of managing dedicated processing resources, server system and computer program product | |
CN112148468A (zh) | 一种资源调度方法、装置、电子设备及存储介质 | |
CN114490078A (zh) | 一种微服务的动态缩扩容方法、装置及设备 | |
CN112527482A (zh) | 基于移动边缘云平台的任务管理方法及系统 | |
CN111858014A (zh) | 资源分配方法及装置 | |
CN112130997B (zh) | 一种资源分配方法及装置 | |
US20190158416A1 (en) | Automatic diagonal scaling of workloads in a distributed computing environment | |
CN117369990A (zh) | 一种算力资源调度方法及装置、系统、设备、存储介质 | |
CN111555987A (zh) | 限流配置方法、装置、设备及计算机存储介质 | |
US11093281B2 (en) | Information processing apparatus, control method, and program to control allocation of computer resources for different types of tasks | |
CN109062707B (zh) | 电子装置及其限制进程间通信的方法、存储介质 | |
GB2504812A (en) | Load balancing in a SAP (RTM) system for processors allocated to data intervals based on system load |
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: 20210319 |
|
WW01 | Invention patent application withdrawn after publication |