CN108563500A - 基于云平台的任务调度方法、云平台及计算机存储介质 - Google Patents
基于云平台的任务调度方法、云平台及计算机存储介质 Download PDFInfo
- Publication number
- CN108563500A CN108563500A CN201810434487.2A CN201810434487A CN108563500A CN 108563500 A CN108563500 A CN 108563500A CN 201810434487 A CN201810434487 A CN 201810434487A CN 108563500 A CN108563500 A CN 108563500A
- Authority
- CN
- China
- Prior art keywords
- task
- node
- task node
- cloud platform
- scheduler
- 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
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
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- 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
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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/5083—Techniques for rebalancing the load in a distributed system
Abstract
本发明公开了一种基于云平台的任务调度方法,该方法包括:在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。本发明还公开了一种云平台及计算机存储介质。本发明能够满足用户的需求,实现对云平台任务节点资源的合理有效利用,提升了用户体验。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种基于云平台的任务调度方法、云平台及计算机存储介质。
背景技术
云计算(Cloud Computing)是分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network StorageTechnologies)、虚拟化(Virtualization)、负载均衡(Load Balance)、热备冗余(HighAvailable)等传统计算机和网络技术发展融合的产物,云计算以极小的管理开销,迅速供应用户所需的系统资源与高级服务。云平台部署在大规模服务器集群上,为云计算提供强大的计算能力。云平台中负责任务执行的集群节点称为任务节点。云平台任务调度的主要作用是将用户的资源申请任务通过一定的策略方法分配至各个任务节点,由各个任务节点完成用户的任务请求。常用的任务调度方法关注的是如何将任务分配给任务节点,而如何进行任务调度,保证任务执行能够满足用户需求,是目前关注的问题。
发明内容
本发明的主要目的在于提供一种基于云平台的任务调度方法、云平台及计算机存储介质,旨在实现对云平台任务节点资源的合理有效利用,满足用户需求,从而提升用户体验。。
为实现上述目的,本发明提供一种基于云平台的任务调度方法,所述方法包括:
在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;
根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;
根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
可选地,所述运行状态信息包括硬件状态信息和等待被执行的任务数,所述根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力的步骤包括:
根据各个任务节点的所述硬件状态信息,确定各个任务节点的硬件处理能力;
根据各个任务节点的所述等待被执行的任务数,确定各个任务节点的任务承载能力;
根据各个任务节点的所述硬件处理能力和任务承载能力,确定各个任务节点的任务处理能力。
可选地,所述硬件状态信息包括CPU占用率、内存使用率、网络资源使用率和CPU温度,所述根据各个任务节点的所述硬件状态信息,确定各个任务节点的硬件处理能力的步骤包括:
根据各个任务节点的所述CPU占用率、内存使用率、网络资源使用率和CPU温度,以及预设计算公式,计算各个任务节点的硬件处理能力。
可选地,所述根据各个任务节点的所述等待被执行的任务数,确定各个任务节点的任务承载能力的步骤包括:
确定云平台任务节点集群执行单个任务的平均时间;
根据所述执行单个任务的平均时间和各个任务节点的等待被执行的任务数,计算各个任务节点的预等待时间;
根据所述各个任务节点的预等待时间,确定各个任务节点的任务承载能力。
可选地,所述确定云平台任务节点集群执行单个任务的平均时间的步骤包括:
确定当前周期之前待计算的各个周期;
获取云平台任务节点集群在所述待计算的各个周期内完成的任务总数;
计算云平台任务节点集群在所述待计算的各个周期内的单个任务完成时间;
计算所述单个任务完成时间的平均值,作为云平台任务节点集群执行单个任务的平均时间。
可选地,所述根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点的步骤包括:
根据各个任务节点的所述任务处理能力,设置各个任务节点的优先级,并根据所述待调度任务的优先级,以及各个任务节点的所述优先级,确定执行所述待调度任务的目标任务节点。
可选地,所述根据各个任务节点的所述任务处理能力,设置各个任务节点的优先级,并根据所述待调度任务的优先级,以及各个任务节点的所述优先级,确定执行所述待调度任务的目标任务节点的步骤包括:
分别将各个任务节点的任务处理能力与预设任务处理能力范围进行比对;
将任务处理能力高于预设任务处理能力范围上限值的任务节点确定为高优先级待选任务节点集合;
将任务处理能力处于预设任务处理能力范围内的任务节点确定为中优先级待选任务节点集合;
将任务节点处理能力低于预设任务处理能力范围下限值的任务节点确定为低优先级待选任务节点集合;
根据所述待调度任务的优先级,按照预设规则,从各个优先级的待选任务节点集合中确定匹配的待选任务节点集合,并从所述匹配的待选任务节点集合中选取任务节点,作为执行所述待调度任务的目标任务节点。
可选地,所述根据所述各个任务节点的预等待时间,确定各个任务节点的任务承载能力的步骤之前,包括:
分别将各个任务节点的预等待时间与预设等待时间阈值进行比对;
将预等待时间超出预设等待时间阈值的任务节点,作为无效任务节点。
此外,为实现上述目的,本发明还提供一种云平台,所述云平台包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于云平台的任务调度程序,所述基于云平台的任务调度程序被所述处理器执行时实现如下步骤:
在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;
根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;
根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
此外,为实现上述目的,本发明还提供一种计算机存储介质,所述计算机存储介质上存储有基于云平台的任务调度程序,所述基于云平台的任务调度程序被处理器执行时实现如下步骤:
在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;
根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;
根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
本发明本发明实施例在接收到待调度任务时,首先确定用户为待调度任务所设置的优先级,并基于当前周期内云平台各个任务节点的运行状态信息,确定各个任务节点的任务处理能力,依据待调度任务的优先级和各个任务节点的任务处理能力调度待调度任务,不仅满足用户的需求,且实现对云平台任务节点资源的合理有效利用,提升了用户体验。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;
图2为本发明基于云平台的任务调度方法方法第一实施例的流程示意图;
图3为本发明基于云平台的任务调度方法方法第一实施例的第一细化流程示意图;
图4为本发明基于云平台的任务调度方法方法第一实施例的第二细化流程示意图;
图5为本发明基于云平台的任务调度方法方法第一实施例的第三细化流程示意图;
图6为本发明基于云平台的任务调度方法方法第二实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端是云平台。
如图1所示,该终端可以包括:处理器1001,例如CPU,通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选的用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于云平台的任务调度程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的基于云平台的任务调度程序,并执行以下操作:
在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;
根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;
根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
进一步地,所述运行状态信息包括硬件状态信息和等待被执行的任务数,处理器1001可以调用存储器1005中存储的基于云平台的任务调度程序,还执行以下操作:
根据各个任务节点的所述硬件状态信息,确定各个任务节点的硬件处理能力;
根据各个任务节点的所述等待被执行的任务数,确定各个任务节点的任务承载能力;
根据各个任务节点的所述硬件处理能力和任务承载能力,确定各个任务节点的任务处理能力。
进一步地,所述硬件状态信息包括CPU占用率、内存使用率、网络资源使用率和CPU温度,处理器1001可以调用存储器1005中存储的基于云平台的任务调度程序,还执行以下操作:
根据各个任务节点的所述CPU占用率、内存使用率、网络资源使用率和CPU温度,以及预设计算公式,计算各个任务节点的硬件处理能力。
进一步地,处理器1001可以调用存储器1005中存储的基于云平台的任务调度程序,还执行以下操作:
确定云平台任务节点集群执行单个任务的平均时间;
根据所述执行单个任务的平均时间和各个任务节点的等待被执行的任务数,计算各个任务节点的预等待时间;
根据所述各个任务节点的预等待时间,确定各个任务节点的任务承载能力。
进一步地,处理器1001可以调用存储器1005中存储的基于云平台的任务调度程序,还执行以下操作:
确定当前周期之前待计算的各个周期;
获取云平台任务节点集群在所述待计算的各个周期内完成的任务总数;
计算云平台任务节点集群在所述待计算的各个周期内的单个任务完成时间;
计算所述单个任务完成时间的平均值,作为云平台任务节点集群执行单个任务的平均时间。
进一步地,处理器1001可以调用存储器1005中存储的基于云平台的任务调度程序,还执行以下操作:
根据各个任务节点的所述任务处理能力,设置各个任务节点的优先级,并根据所述待调度任务的优先级,以及各个任务节点的所述优先级,确定执行所述待调度任务的目标任务节点。
进一步地,处理器1001可以调用存储器1005中存储的基于云平台的任务调度程序,还执行以下操作:
分别将各个任务节点的任务处理能力与预设任务处理能力范围进行比对;
将任务处理能力高于预设任务处理能力范围上限值的任务节点确定为高优先级待选任务节点集合;
将任务处理能力处于预设任务处理能力范围内的任务节点确定为中优先级待选任务节点集合;
将任务节点处理能力低于预设任务处理能力范围下限值的任务节点确定为低优先级待选任务节点集合;
根据所述待调度任务的优先级,按照预设规则,从各个优先级的待选任务节点集合中确定匹配的待选任务节点集合,并从所述匹配的待选任务节点集合中选取任务节点,作为执行所述待调度任务的目标任务节点。
进一步地,处理器1001可以调用存储器1005中存储的基于云平台的任务调度程序,还执行以下操作:
分别将各个任务节点的预等待时间与预设等待时间阈值进行比对;
将预等待时间超出预设等待时间阈值的任务节点,作为无效任务节点。
基于上述终端的硬件结构,提出本发明基于云平台的任务调度方法的各个实施例。
参照图2,本发明基于云平台的任务调度方法第一实施例提供一种基于云平台的任务调度方法,所述方法包括:
步骤S10,在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;
本发明实施例中,云平台可以接收用户发送的任务请求,用户发送的任务请求携带有待调度任务和其对应的优先级。其中,待调度任务对应的优先级是用户在触发任务请求时进行设定的,比如,用户可以设定的优先级范围为1~100,数值越小,表示任务的优先级越低。云平台在接收到待调度任务时,确定待调度任务的优先级,将优先级数值低于40的待调度任务划分为低优先级待调度任务,将优先级数值处于40-80之间的待调度任务划分为中优先级待调度任务,将优先级数值高于80的待调度任务划分为高优先级待调度任务。需要说明的是,本发明实施例对用户触发任务请求时所设定的优先级进行划分时的划分范围不作限定。同时,云平台获取当前周期内云平台各个任务节点的运行状态信息。在本发明实施例中,云平台每间隔时间T,可以接收到各个任务节点发送的运行状态信息,该运行状态信息包括任务节点在当前周期内的硬件状态信息和等待被执行的任务数,硬件状态信息包括但不限于各个任务节点在当前周期内的CPU占用率、内存使用率、网络资源使用率和CPU温度。
步骤S20,根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;
之后,云平台根据各个任务节点的运行状态信息,确定各个任务节点的任务处理能力。具体地,参照图3,步骤S20,可以包括:
步骤S21,根据各个任务节点的所述硬件状态信息,确定各个任务节点的硬件处理能力;
步骤S22,根据各个任务节点的所述等待被执行的任务数,确定各个任务节点的任务承载能力;
步骤S23,根据各个任务节点的所述硬件处理能力和任务承载能力,确定各个任务节点的任务处理能力。
在本发明实施例中,可基于任务节点的硬件处理能力和任务承载能力衡量任务节点的任务处理能力。任务节点的硬件处理能力基于任务节点的硬件状态信息确定,也就是基于任务节点在当前周期内的CPU占用率、内存使用率、网络资源使用率和CPU温度进行确定。具体地,参照图4,步骤S21,可以包括:
步骤S210,根据各个任务节点的所述CPU占用率、内存使用率、网络资源使用率和CPU温度,以及预设计算公式,计算各个任务节点的硬件处理能力。
在本发明实施例中,可以针对任务节点的硬件状态信息设置对应的权重值。将CPU占用率所对应的权重用a1表示;将内存使用率所对应的权重用a2表示;将网络资源使用率所对应的权重用a3表示;将CPU温度所对应的权重用a4表示,且a1+a2+a3+a4=1。本发明实施例中预先设置有任务节点的硬件处理能力计算公式,如下所示:
A=a1x1+a2x2+a3x3+a4x4
其中,A表示任务节点的硬件处理能力;
x1表示CPU占用率,x2表示内存使用率,x3表示网络资源使用率,x4表示CPU温度。
当然,若任务节点的硬件状态信息还包括其他因子时,以此类推,可以针对硬件状态信息的每一个因子设置一个权重值,那么,任务节点的硬件处理能力计算公式即为:
A=a1x1+a2x2+a3x3+a4x4+…+anxn
其中,x1、x2、x3...xn分别表示硬件状态信息的各个因子;
a1、a2、a3...an表示硬件状态信息各个因子对应的权重大小,且a1+a2+a3+...+an=1。
由此,基于各个任务节点的CPU占用率、内存使用率、网络资源使用率和CPU温度,以及上述硬件处理能力计算公式,即可分别计算任意一个任务节点对应的硬件处理能力,从而得到各个任务节点的硬件处理能力。
在本发明实施例中,各个任务节点的任务承载能力基于任务节点的等待被执行的任务数确定。具体地,继续参照图4,步骤S22可以包括:
步骤S220,确定云平台任务节点集群执行单个任务的平均时间;
步骤S221,根据所述执行单个任务的平均时间和各个任务节点的等待被执行的任务数,计算各个任务节点的预等待时间;
步骤S222,根据所述各个任务节点的预等待时间,确定各个任务节点的任务承载能力。
在本发明例中,云平台每间隔时间T,还可以接收到各个任务节点发送的已完成任务总数。云平台可以根据任务节点集群在当前周期之前各个周期T内完成的任务总数,确定云平台任务节点集群执行单个任务的平均时间。基于云平台任务节点集群执行单个任务的平均时间和任意一个任务节点的等待被执行的任务数,即可计算任意一个任务节点若执行当前待调度任务所需等待的时间,定义任意一个任务节点若执行当前待调度任务所需等待的时间为预等待时间,计算预等待时间的计算公式如下:
Tw=mt
其中,Tw表示预等待时间;
m表示任意一个任务节点的等待被执行的任务数;
t表示云平台任务节点集群执行单个任务的平均时间。
基于云平台任务节点集群执行单个任务的平均时间和任意一个任务节点的等待被执行的任务数,以及上述预等待时间的计算公式,可分别计算任意一个任务节点的预等待时间,由此,即可得到各个任务节点对应的预等待时间。之后,可以针对各个任务节点对应的预等待时间设置对应的权重值,用来表示各个任务节点对应的任务承载能力。
进一步地,将任意一个任务节点对应的硬件处理能力和任务承载能力进行加和计算后,即可确定该任务节点的任务处理能力。需要说明的是,相应权重值的具体数值大小,可以预先设置,也可以根据实际情况进行确定和调整,本发明实施例对此不作限定。
步骤S30,根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
其中,根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点的步骤,可以包括:
步骤S31,根据各个任务节点的所述任务处理能力,设置各个任务节点的优先级,并根据所述待调度任务的优先级,以及各个任务节点的所述优先级,确定执行所述待调度任务的目标任务节点。
具体地,参照图5,步骤S31可以包括:
步骤S310,分别将各个任务节点的任务处理能力与预设任务处理能力范围进行比对;
步骤S311,将任务处理能力高于预设任务处理能力范围上限值的任务节点确定为高优先级待选任务节点集合;
步骤S312,将任务处理能力处于预设任务处理能力范围内的任务节点确定为中优先级待选任务节点集合;
步骤S313,将任务节点处理能力低于预设任务处理能力范围下限值的任务节点确定为低优先级待选任务节点集合;
步骤S314,根据所述待调度任务的优先级,按照预设规则,从各个优先级的待选任务节点集合中确定匹配的待选任务节点集合,并从所述匹配的待选任务节点集合中选取任务节点,作为执行所述待调度任务的目标任务节点。
在本发明实施例中,云平台可以预先设置一个任务处理能力范围,基于该范围和各个任务节点的任务处理能力,为各个任务节点划分优先级。具体地,云平台在得到各个任务节点的任务处理能力后,分别将各个任务节点的任务处理能力与预设任务处理能力范围进行比对,将任务处理能力高于预设任务处理能力范围上限值的任务节点确定为高优先级待选任务节点集合,将任务处理能力处于预设任务处理能力范围内的任务节点确定为中优先级待选任务节点集合,将任务节点处理能力低于预设任务处理能力范围下限值的任务节点确定为低优先级待选任务节点集合。
之后,可以根据待调度任务的优先级,按照预先设定的规则,从各个优先级的待选任务节点集合中确定匹配的待选任务节点集合,并从匹配的待选任务节点集合中选取任务节点,作为执行所述待调度任务的目标任务节点。比如,若待调度任务的优先级为高优先级,则从高优先级待选任务节点集合中随机选择一个任务节点作为执行所述待调度任务的目标任务节点;若待调度任务的优先级为中优先级,则从中优先级待选任务节点集合中随机选择一个任务节点作为执行所述待调度任务的目标任务节点;若待调度任务的优先级为低优先级,则从低优先级待选任务节点集合中随机选择一个任务节点作为执行所述待调度任务的目标任务节点。如此,实现待调度任务与任务节点的处理能力进行匹配,不仅满足用户的需求,且实现对云平台任务节点资源的合理有效利用,从而提高了任务调度的速度。进一步地,将待调度任务调度至相应的任务节点。
本发明实施例在接收到待调度任务时,首先确定用户为待调度任务所设置的优先级,并基于当前周期内云平台各个任务节点的运行状态信息,确定各个任务节点的任务处理能力,依据待调度任务的优先级和各个任务节点的任务处理能力调度待调度任务,不仅满足用户的需求,且实现对云平台任务节点资源的合理有效利用,提升了用户体验。
进一步地,参照图5,本发明基于云平台的任务调度方法第二实施例提供一种基于云平台的任务调度方法,基于上述图2所示的实施例,步骤S220,可以包括:
步骤S2200,确定当前周期之前待计算的各个周期;
步骤S2201,获取云平台任务节点集群在所述待计算的各个周期内完成的任务总数;
步骤S2202,计算云平台任务节点集群在所述待计算的各个周期内的单个任务完成时间;
步骤S2203,计算所述单个任务完成时间的平均值,作为云平台任务节点集群执行单个任务的平均时间。
在本发明实施例中,为了计算各个任务节点的预等待时间,需确定云平台任务节点集群执行单个任务的平均时间。具体地,云平台每间隔时间T,可以接收到各个任务节点发送的已完成任务总数。为了减少计算量,不影响云平台的性能,不必基于当前周期之前的所有周期,来确定云平台任务节点集群执行单个任务的平均时间,本发明实施例选取当前周期之前任意n个周期作为待计算的周期,且n≥2。针对待计算的周期中的任意一个周期Ti,首先基于云平台任务节点集群在Ti内完成的任务总数M,计算Ti与M的比值,即得到云平台任务节点集群在Ti内的单个任务完成时间ti,由此,可得到云平台任务节点集群在待计算的各个周期内的单个任务完成时间,然后计算单个任务完成时间的平均值,作为云平台任务节点集群执行单个任务的平均时间。
在本实施例中,基于当前周期之前各个周期内的完成的任务总数,可以确定云平台任务节点集群执行单个任务的平均时间,由此可以计算各个任务节点的预等待时间,从而确定各个任务节点的任务承载能力。
进一步地,本发明基于云平台的任务调度方法第三实施例提供一种基于云平台的任务调度方法,基于上述图2所示的实施例,步骤S222之前,可以包括:
步骤S223,分别将各个任务节点的预等待时间与预设等待时间阈值进行比对;
步骤S224,将预等待时间超出预设等待时间阈值的任务节点,作为无效任务节点。
在本发明实施例中,当云平台任务节点的预等待时间过长时,说明该任务节点负载较重,为了避免影响该任务节点的性能,保证待调度任务的及时处理,本发明实施例可以预先设置等待时间阈值。云平台在计算得到各个任务节点对应的预等待时间后,分别将各个任务节点的预等待时间与预设等待时间阈值进行比对。对于预等待时间超出预设等待时间阈值的任务节点,说明当前负载较重,不作为处理待调度任务所要考虑的任务节点。需要说明的是,等待时间阈值可以根据实际情况进行灵活设置,本发明实施例对此不作限定。
在本发明实施例中,通过设置等待时间阈值,并将各个任务节点对应的预等待时间与等待时间阈值进行比较,可以有效避免云平台选取负载较重的任务节点作为处理待调度任务的任务节点。
此外,本发明实施例还提出一种计算机存储介质,
本发明计算机存储介质上存储有基于云平台的任务调度程序,所述基于云平台的任务调度程序被处理器执行时实现如下操作:
在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;
根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;
根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
本发明计算机存储介质的具体实施例与上述基于云平台的任务调度方法各实施例基本相同,在此不作赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于云平台的任务调度方法,其特征在于,所述方法包括:
在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;
根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;
根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
2.如权利要求1所述的基于云平台的任务调度方法,其特征在于,所述运行状态信息包括硬件状态信息和等待被执行的任务数,所述根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力的步骤包括:
根据各个任务节点的所述硬件状态信息,确定各个任务节点的硬件处理能力;
根据各个任务节点的所述等待被执行的任务数,确定各个任务节点的任务承载能力;
根据各个任务节点的所述硬件处理能力和任务承载能力,确定各个任务节点的任务处理能力。
3.如权利要求2所述的基于云平台的任务调度方法,其特征在于,所述硬件状态信息包括CPU占用率、内存使用率、网络资源使用率和CPU温度,所述根据各个任务节点的所述硬件状态信息,确定各个任务节点的硬件处理能力的步骤包括:
根据各个任务节点的所述CPU占用率、内存使用率、网络资源使用率和CPU温度,以及预设计算公式,计算各个任务节点的硬件处理能力。
4.如权利要求2所述的基于云平台的任务调度方法,其特征在于,所述根据各个任务节点的所述等待被执行的任务数,确定各个任务节点的任务承载能力的步骤包括:
确定云平台任务节点集群执行单个任务的平均时间;
根据所述执行单个任务的平均时间和各个任务节点的等待被执行的任务数,计算各个任务节点的预等待时间;
根据所述各个任务节点的预等待时间,确定各个任务节点的任务承载能力。
5.如权利要求4所述的基于云平台的任务调度方法,其特征在于,所述确定云平台任务节点集群执行单个任务的平均时间的步骤包括:
确定当前周期之前待计算的各个周期;
获取云平台任务节点集群在所述待计算的各个周期内完成的任务总数;
计算云平台任务节点集群在所述待计算的各个周期内的单个任务完成时间;
计算所述单个任务完成时间的平均值,作为云平台任务节点集群执行单个任务的平均时间。
6.如权利要求1所述的基于云平台的任务调度方法,其特征在于,所述根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点的步骤包括:
根据各个任务节点的所述任务处理能力,设置各个任务节点的优先级,并根据所述待调度任务的优先级,以及各个任务节点的所述优先级,确定执行所述待调度任务的目标任务节点。
7.如权利要求6所述的基于云平台的任务调度方法,其特征在于,所述根据各个任务节点的所述任务处理能力,设置各个任务节点的优先级,并根据所述待调度任务的优先级,以及各个任务节点的所述优先级,确定执行所述待调度任务的目标任务节点的步骤包括:
分别将各个任务节点的任务处理能力与预设任务处理能力范围进行比对;
将任务处理能力高于预设任务处理能力范围上限值的任务节点确定为高优先级待选任务节点集合;
将任务处理能力处于预设任务处理能力范围内的任务节点确定为中优先级待选任务节点集合;
将任务节点处理能力低于预设任务处理能力范围下限值的任务节点确定为低优先级待选任务节点集合;
根据所述待调度任务的优先级,按照预设规则,从各个优先级的待选任务节点集合中确定匹配的待选任务节点集合,并从所述匹配的待选任务节点集合中选取任务节点,作为执行所述待调度任务的目标任务节点。
8.如权利要求4所述的基于云平台的任务调度方法,其特征在于,所述根据所述各个任务节点的预等待时间,确定各个任务节点的任务承载能力的步骤之前,包括:
分别将各个任务节点的预等待时间与预设等待时间阈值进行比对;
将预等待时间超出预设等待时间阈值的任务节点,作为无效任务节点。
9.一种云平台,其特征在于,所述云平台包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于云平台的任务调度程序,所述基于云平台的任务调度程序被所述处理器执行时实现如下步骤:
在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;
根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;
根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
10.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有基于云平台的任务调度程序,所述基于云平台的任务调度程序被处理器执行时实现如下步骤:
在接收到待调度任务时,确定所述待调度任务的优先级,并获取当前周期内云平台各个任务节点的运行状态信息;
根据各个任务节点的所述运行状态信息,确定各个任务节点的任务处理能力;
根据所述待调度任务的优先级,以及各个任务节点的所述任务处理能力,确定执行所述待调度任务的目标任务节点,并将所述待调度任务调度至所述目标任务节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810434487.2A CN108563500A (zh) | 2018-05-08 | 2018-05-08 | 基于云平台的任务调度方法、云平台及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810434487.2A CN108563500A (zh) | 2018-05-08 | 2018-05-08 | 基于云平台的任务调度方法、云平台及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108563500A true CN108563500A (zh) | 2018-09-21 |
Family
ID=63538030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810434487.2A Withdrawn CN108563500A (zh) | 2018-05-08 | 2018-05-08 | 基于云平台的任务调度方法、云平台及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108563500A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109597685A (zh) * | 2018-09-30 | 2019-04-09 | 阿里巴巴集团控股有限公司 | 任务分配方法、装置和服务器 |
CN109688222A (zh) * | 2018-12-26 | 2019-04-26 | 深圳市网心科技有限公司 | 共享计算资源的调度方法、共享计算系统、服务器及存储介质 |
CN110175078A (zh) * | 2019-05-30 | 2019-08-27 | 口碑(上海)信息技术有限公司 | 业务处理方法及装置 |
CN110187971A (zh) * | 2019-05-30 | 2019-08-30 | 口碑(上海)信息技术有限公司 | 业务请求处理方法及装置 |
CN111381956A (zh) * | 2018-12-28 | 2020-07-07 | 杭州海康威视数字技术股份有限公司 | 一种任务处理的方法、装置及云分析系统 |
CN111736965A (zh) * | 2019-12-11 | 2020-10-02 | 西安宇视信息科技有限公司 | 任务调度方法、装置、调度服务器和机器可读存储介质 |
CN111783970A (zh) * | 2020-06-30 | 2020-10-16 | 联想(北京)有限公司 | 一种数据处理方法及电子设备 |
CN111913784A (zh) * | 2019-05-07 | 2020-11-10 | 中移(苏州)软件技术有限公司 | 任务调度方法及装置、网元、存储介质 |
CN112162839A (zh) * | 2020-09-25 | 2021-01-01 | 太平金融科技服务(上海)有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
CN112202866A (zh) * | 2020-09-25 | 2021-01-08 | 大拓无限(重庆)智能科技有限公司 | 用于任务调度的方法、装置和设备 |
CN112925616A (zh) * | 2019-12-06 | 2021-06-08 | Oppo广东移动通信有限公司 | 任务分配方法、装置、存储介质及电子设备 |
CN112988361A (zh) * | 2021-05-13 | 2021-06-18 | 神威超算(北京)科技有限公司 | 集群任务分配方法、装置和计算机可读介质 |
CN113220428A (zh) * | 2021-04-23 | 2021-08-06 | 复旦大学 | 针对云计算系统实时性需求的动态任务调度算法 |
CN113282405A (zh) * | 2021-04-13 | 2021-08-20 | 福建天泉教育科技有限公司 | 一种负载调整的优化方法及终端 |
CN115048225A (zh) * | 2022-08-15 | 2022-09-13 | 四川汉唐云分布式存储技术有限公司 | 一种基于分布式存储的分布式调度方法 |
WO2024000533A1 (zh) * | 2022-06-30 | 2024-01-04 | 北京小米移动软件有限公司 | 人工智能应用管理方法、装置及通信设备 |
-
2018
- 2018-05-08 CN CN201810434487.2A patent/CN108563500A/zh not_active Withdrawn
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109597685A (zh) * | 2018-09-30 | 2019-04-09 | 阿里巴巴集团控股有限公司 | 任务分配方法、装置和服务器 |
CN109688222A (zh) * | 2018-12-26 | 2019-04-26 | 深圳市网心科技有限公司 | 共享计算资源的调度方法、共享计算系统、服务器及存储介质 |
CN109688222B (zh) * | 2018-12-26 | 2020-12-25 | 深圳市网心科技有限公司 | 共享计算资源的调度方法、共享计算系统、服务器及存储介质 |
CN111381956A (zh) * | 2018-12-28 | 2020-07-07 | 杭州海康威视数字技术股份有限公司 | 一种任务处理的方法、装置及云分析系统 |
CN111381956B (zh) * | 2018-12-28 | 2024-02-27 | 杭州海康威视数字技术股份有限公司 | 一种任务处理的方法、装置及云分析系统 |
CN111913784A (zh) * | 2019-05-07 | 2020-11-10 | 中移(苏州)软件技术有限公司 | 任务调度方法及装置、网元、存储介质 |
CN111913784B (zh) * | 2019-05-07 | 2024-01-26 | 中移(苏州)软件技术有限公司 | 任务调度方法及装置、网元、存储介质 |
CN110175078A (zh) * | 2019-05-30 | 2019-08-27 | 口碑(上海)信息技术有限公司 | 业务处理方法及装置 |
CN110187971A (zh) * | 2019-05-30 | 2019-08-30 | 口碑(上海)信息技术有限公司 | 业务请求处理方法及装置 |
CN110187971B (zh) * | 2019-05-30 | 2020-08-04 | 口碑(上海)信息技术有限公司 | 业务请求处理方法及装置 |
CN112925616A (zh) * | 2019-12-06 | 2021-06-08 | Oppo广东移动通信有限公司 | 任务分配方法、装置、存储介质及电子设备 |
CN111736965A (zh) * | 2019-12-11 | 2020-10-02 | 西安宇视信息科技有限公司 | 任务调度方法、装置、调度服务器和机器可读存储介质 |
CN111783970A (zh) * | 2020-06-30 | 2020-10-16 | 联想(北京)有限公司 | 一种数据处理方法及电子设备 |
CN112202866B (zh) * | 2020-09-25 | 2022-08-23 | 大拓无限(重庆)智能科技有限公司 | 用于任务调度的方法、装置和设备 |
CN112162839A (zh) * | 2020-09-25 | 2021-01-01 | 太平金融科技服务(上海)有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
CN112202866A (zh) * | 2020-09-25 | 2021-01-08 | 大拓无限(重庆)智能科技有限公司 | 用于任务调度的方法、装置和设备 |
CN113282405A (zh) * | 2021-04-13 | 2021-08-20 | 福建天泉教育科技有限公司 | 一种负载调整的优化方法及终端 |
CN113282405B (zh) * | 2021-04-13 | 2023-09-15 | 福建天泉教育科技有限公司 | 一种负载调整的优化方法及终端 |
CN113220428B (zh) * | 2021-04-23 | 2022-06-21 | 复旦大学 | 针对云计算系统实时性需求的动态任务调度方法 |
CN113220428A (zh) * | 2021-04-23 | 2021-08-06 | 复旦大学 | 针对云计算系统实时性需求的动态任务调度算法 |
CN112988361B (zh) * | 2021-05-13 | 2021-08-20 | 中诚华隆计算机技术有限公司 | 集群任务分配方法、装置和计算机可读介质 |
CN112988361A (zh) * | 2021-05-13 | 2021-06-18 | 神威超算(北京)科技有限公司 | 集群任务分配方法、装置和计算机可读介质 |
WO2024000533A1 (zh) * | 2022-06-30 | 2024-01-04 | 北京小米移动软件有限公司 | 人工智能应用管理方法、装置及通信设备 |
CN115048225A (zh) * | 2022-08-15 | 2022-09-13 | 四川汉唐云分布式存储技术有限公司 | 一种基于分布式存储的分布式调度方法 |
CN115048225B (zh) * | 2022-08-15 | 2022-11-29 | 四川汉唐云分布式存储技术有限公司 | 一种基于分布式存储的分布式调度方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108563500A (zh) | 基于云平台的任务调度方法、云平台及计算机存储介质 | |
CN108628674A (zh) | 基于云平台的任务调度方法、云平台及计算机存储介质 | |
Qi et al. | A QoS-aware virtual machine scheduling method for energy conservation in cloud-based cyber-physical systems | |
CN102185779B (zh) | 与综合配置能力成比例的数据中心资源负载均衡的方法及装置 | |
CN108647092A (zh) | 云存储方法、云平台及计算机可读存储介质 | |
Moschakis et al. | A meta-heuristic optimization approach to the scheduling of bag-of-tasks applications on heterogeneous clouds with multi-level arrivals and critical jobs | |
CN110231976B (zh) | 一种基于负载预测的边缘计算平台容器部署方法及系统 | |
CN102567080B (zh) | 一种云计算环境中的面向负载均衡的虚拟机择位系统 | |
CN108667878A (zh) | 服务器负载均衡方法及装置、存储介质、电子设备 | |
CN103793272A (zh) | 一种周期性任务调度方法及系统 | |
CN109906421A (zh) | 基于线程重要性的处理器核划分 | |
CN102262567A (zh) | 虚拟机调度决策的系统、平台及方法 | |
CN103401939A (zh) | 一种采用混合调度策略的负载均衡方法 | |
CN109906437A (zh) | 基于线程重要性的处理器核停止和频率选择 | |
CN102710779B (zh) | 一种基于云计算环境下的服务资源分配的负载均衡策略 | |
CN111625337A (zh) | 一种任务调度方法、装置、电子设备和可读存储介质 | |
Hosseini et al. | Optimized task scheduling for cost-latency trade-off in mobile fog computing using fuzzy analytical hierarchy process | |
CN108829519A (zh) | 基于云平台的任务调度方法、云平台及计算机可读存储介质 | |
CN107370799A (zh) | 一种混合移动云环境中高能效的多用户在线计算迁移方法 | |
Tian et al. | User preference-based hierarchical offloading for collaborative cloud-edge computing | |
CN110099083A (zh) | 一种用于服务器集群的负载均衡调度方法及装置 | |
CN106998340A (zh) | 一种板卡资源的负载均衡方法及装置 | |
CN105519075A (zh) | 一种资源调度方法,及装置 | |
Thiam et al. | Cooperative scheduling anti-load balancing algorithm for cloud: Csaac | |
CN112363827A (zh) | 一种基于延迟因子的多资源指标Kubernetes调度方法 |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20180921 |