一种任务调度方法、装置及电子设备制造方法及图纸

技术编号:26650422 阅读:14 留言:0更新日期:2020-12-09 00:45
本发明专利技术公开了一种任务调度方法、装置及电子设备。该方法包括:获取当前任务对应的任务数据;其中,所述任务数据包括已占用的执行器CPU的总线程数,执行器CPU的空闲线程数,所述当前任务在每一执行器运行的平均时长,以及每一执行器分别执行其对应的任务的平均时长;根据所述任务数据计算所述当前任务在各个执行器的运行时长;根据所述运行时长,将所述当前任务调度到匹配的执行器。本发明专利技术实施例提供的任务调度方法、装置及电子设备能够根据任务运行时长直接反映出任务执行状况,从而更准确的完成任务调度,提高了任务调度效率,提升了微服务应用的性能。

【技术实现步骤摘要】
一种任务调度方法、装置及电子设备
本专利技术属于信息技术处理领域,更具体地涉及一种任务调度方法、装置及电子设备。
技术介绍
随着信息化建设的不断发展,政府和企业的信息化应用系统架构逐步由传统的单体架构向微服务架构转变。微服务架构由一系列的微服务共同构建整个系统,每个微服务都独立运行于自己的进程里,每个服务为独立业务开发,只关注特定的某个功能,比如用户管理、资源管理等。当使用微服务架构的大型应用运行时,其包含多个微服务,每个微服务在工作时需要创建大量任务,同时每个微服务还会运行多个实例来执行任务。相关技术通过各个执行实例将任务统一注册到数据库中,以“抢占式”获取数据库锁并由抢占成功节点负责运行任务;相关技术还针对Quartz等任务框架加入轮询、一致性哈希等调度算法来进行负载均衡;相关技术还通过算法预测节点负载,根据负载优化调度任务。专利技术人在实现本专利技术实施例的过程中,发现相关技术至少存在以下技术问题:“抢占式”的方式会导致节点负载悬殊,虽然通过调度算法进行了优化,但是通过节点负载并不能准确的反映任务在该节点的执行情况,从而不能准确的进行任务调度。
技术实现思路
本专利技术提供了一种任务调度方法、装置及电子设备,以解决现有技术在进行任务调度时存在准确性低的技术问题。实现上述目的,按照本专利技术的一个方面,提供了一种任务调度方法,应用于电子设备,所述方法包括:获取当前任务对应的任务数据;其中,所述任务数据包括已占用的执行器CPU的总线程数,执行器CPU的空闲线程数,所述当前任务在每一执行器运行的平均时长,以及每一执行器分别执行其对应的任务的平均时长;根据所述任务数据计算所述当前任务在各个执行器的运行时长;根据所述运行时长,将所述当前任务调度到匹配的执行器。可选地,所述根据所述任务数据计算所述当前任务在各个执行器的运行时长的步骤由预设的算法模型执行,所述方法还包括:采集样本数据,所述样本数据包括任务开始时间、任务结束时间、任务开始时所述已占用的执行器CPU的总线程数和所述执行器CPU的空闲线程数;基于式子,通过神经网络模型对所述样本数据进行训练和测试,以获得所述预设的算法模型;其中,所述式子为:其中,T总为所述已占用的执行器CPU的总线程数,T闲为所述执行器CPU的空闲线程数,timejob为所述当前任务在每一执行器运行的平均时长,为所述每一执行器分别执行其对应的任务i的平均时长。可选地,所述基于式子,通过神经网络模型对所述样本数据进行训练和测试,以获得所述预设的算法模型,包括:根据预设比例将所述样本数据分为训练集和测试集,并进行数据预处理;将所述训练集和所述测试集分别进行标准化处理,以得到标准处理后的第一训练集和第一测试集;将所述第一训练集分为无标签数据集合和有标签数据集合;利用门控循环单元网络对所述无标签数据集合进行半监督深度预训练,以获得初始参数集合;根据所述初始参数集合,利用门控循环单元网络对所述有标签数据集合进行有监督训练,获得所述式子中的系数α、β、γ、θ、δ,以确定所述式子;根据所述第一测试集验证所述确定的式子,以获得所述预设的算法模型。可选地,所述利用门控循环单元网络对所述无标签数据集合进行半监督深度预训练,以获得初始参数集合,包括:步骤a:将第j层的门控循环单元网络作为自编码器的编码器,以及接入的一与所述门控循环单元网络结构和均参数相同的门控循环单元网络作为所述自编码器的解码器,并根据所述自编码器对所述无标签数据集合进行训练,以最小原始输入重建误差为目标对所述无标签数据集进行学习,以获得参数结果Pj;步骤b:将所述第j层对应的所述自编码器的输出作为第j+1层门控循环单元网络的输入,固定所述第j层的所述参数结果Pj,同时对所述第j+1层执行所述步骤a;步骤c:判断所述门控循环单元网络的n层结构是否全部完成初始化;步骤d:若否,执行所述步骤b,直至所述门控循环单元网络的n层结构全部完成初始化,以获得所述初始参数集合P={P1,P2,P3……Pn}。可选地,所述根据所述第一测试集验证所述确定的式子,以获得所述预设的算法模型,包括:根据所述第一测试集和所述确定的式子计算ROC曲线参数;当所述ROC曲线参数满足预设条件时,确定所述式子的系数匹配,将包含所述系数的式子确定为所述预设的算法模型。可选地,所述方法还包括:获取任务执行过程中监控到的所述任务数据,根据监控到的所述任务数据周期性的优化所述预设的算法模型。可选地,所述根据所述运行时长,将所述当前任务调度到匹配的执行器具体包括:获取所述运行时长最短的执行器,并将所述当前任务调度到所述运行时长最短的所述执行器。可选地,在执行所述获取当前任务对应的任务数据的步骤之前,所述方法还包括:创建任务中心微服务,其中,所述任务中心微服务提供创建、修改、删除、暂停、开始以及选择超时策略的任务接口;所述采集样本数据包括:通过预设调度算法调度任务进行预实验,并通过所述任务中心微服务监控任务的执行情况,记录所述任务开始时间、所述任务结束时间、所述任务开始时已占用的执行器CPU的总线程数和所述执行器CPU的空闲线程数。按照本专利技术的另一方面,提供了一种任务调度装置,应用于电子设备,所述装置包括:数据获取模块,用于获取当前任务对应的任务数据;其中,所述任务数据包括已占用的执行器CPU的总线程数,执行器CPU的空闲线程数,所述当前任务在每一执行器运行的平均时长,以及每一执行器分别执行其对应的任务的平均时长;时长计算模块,用于根据所述任务数据计算所述当前任务在各个执行器的运行时长;任务调度模块,用于根据所述运行时长,将所述当前任务调度到匹配的执行器。按照本专利技术的又一方面,提供了一种电子设备,所述电子设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的任务调度方法。总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,具有如下有益效果:本专利技术实施例提供了一种任务调度方法、装置及电子设备,其通过获取当前任务对应的任务数据,根据所述任务数据计算所述当前任务在各个执行器的运行时长,最后根据所述运行时长,将所述当前任务调度至匹配的执行器。其中,任务数据包括已占用的执行器CPU的总线程数,执行器CPU的空闲线程数,所述当前任务在每一执行器运行的平均时长,以及每一执行器分别执行其对应的任务的平均时长。由此,本专利技术实施例提供的任务调度方法、装置及电子设备能够根据任务运行时长直接反映出任务执行状况,从而更准确的完成任务调度,提高了任务调度效率,提升了微服务应用的性能。附图说明一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明并不构成对本文档来自技高网...

【技术保护点】
1.一种任务调度方法,应用于电子设备,其特征在于,所述方法包括:/n获取当前任务对应的任务数据;其中,所述任务数据包括已占用的执行器CPU的总线程数,执行器CPU的空闲线程数,所述当前任务在每一执行器运行的平均时长,以及每一执行器分别执行其对应的任务的平均时长;/n根据所述任务数据计算所述当前任务在各个执行器的运行时长;/n根据所述运行时长,将所述当前任务调度到匹配的执行器。/n

【技术特征摘要】
1.一种任务调度方法,应用于电子设备,其特征在于,所述方法包括:
获取当前任务对应的任务数据;其中,所述任务数据包括已占用的执行器CPU的总线程数,执行器CPU的空闲线程数,所述当前任务在每一执行器运行的平均时长,以及每一执行器分别执行其对应的任务的平均时长;
根据所述任务数据计算所述当前任务在各个执行器的运行时长;
根据所述运行时长,将所述当前任务调度到匹配的执行器。


2.根据权利要求1所述的方法,其特征在于,所述根据所述任务数据计算所述当前任务在各个执行器的运行时长的步骤由预设的算法模型执行,所述方法还包括:
采集样本数据,所述样本数据包括任务开始时间、任务结束时间、任务开始时所述已占用的执行器CPU的总线程数和所述执行器CPU的空闲线程数;
基于式子,通过神经网络模型对所述样本数据进行训练和测试,以获得所述预设的算法模型;
其中,所述式子为:



其中,T总为所述已占用的执行器CPU的总线程数,T闲为所述执行器CPU的空闲线程数,timejob为所述当前任务在每一执行器运行的平均时长,为所述每一执行器分别执行其对应的任务i的平均时长。


3.根据权利要求2所述的方法,其特征在于,所述基于式子,通过神经网络模型对所述样本数据进行训练和测试,以获得所述预设的算法模型,包括:
根据预设比例将所述样本数据分为训练集和测试集,并进行数据预处理;
将所述训练集和所述测试集分别进行标准化处理,以得到标准处理后的第一训练集和第一测试集;
将所述第一训练集分为无标签数据集合和有标签数据集合;
利用门控循环单元网络对所述无标签数据集合进行半监督深度预训练,以获得初始参数集合;
根据所述初始参数集合,利用门控循环单元网络对所述有标签数据集合进行有监督训练,获得所述式子中的系数α、β、γ、θ、δ,以确定所述式子;
根据所述第一测试集验证所述确定的式子,以获得所述预设的算法模型。


4.根据权利要求3所述的方法,其特征在于,所述利用门控循环单元网络对所述无标签数据集合进行半监督深度预训练,以获得初始参数集合,包括:
步骤a:将第j层的门控循环单元网络作为自编码器的编码器,以及接入的一与所述门控循环单元网络结构和均参数相同的门控循环单元网络作为所述自编码器的解码器,并根据所述自编码器对所述无标签数据集合进行训练,以最小原始输入重建误差为目标对所述无标签数据集进行学习,以获得参数结果Pj;
步骤b:将所述第j层对应的所述自编码器的输出作为第j+1层门控循环单元网络的输入,固定所述第j...

【专利技术属性】
技术研发人员:刘星辰张书东蓝海李庆林李煜琦
申请(专利权)人:烽火通信科技股份有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1