任务调度方法及装置制造方法及图纸

技术编号:14371985 阅读:56 留言:0更新日期:2017-01-09 17:49
本发明专利技术提供了一种任务调度方法及装置,其中方法包括:接收当前任务的执行完成指令;在接收到当前任务的执行完成指令时,检测当前任务的执行结果的正确性和完整性;若当前任务的执行结果正确并且完整,则调用当前任务的下一个任务,否则,中止操作,生成执行结果错误信息并发送出去,其中,各个任务的调用顺序根据各个任务之间的依赖关系确定。通过本发明专利技术实施例中的任务调度方法及装置,根据各个任务之间的依赖关系进行任务调度,能够保证任务执行的准确性。

【技术实现步骤摘要】

本专利技术涉及计算机
,具体而言,涉及一种任务调度方法及装置
技术介绍
在计算机系统中,通常涉及多个任务的调度和执行,计算机系统调度各个任务,从而触发各个任务启动并开始执行。任务通常存在于任务队列中,现有技术中,通常根据任务在任务队列中的先后顺序调度各个任务,比如,任务B先进入任务队列,任务A后进入任务队列,在任务队列中,任务B位于任务A之前,则计算机系统先调用任务B,后调用任务A。然而有些场合下,各个任务之间存在依赖关系,某个任务的执行需要依赖其他任务的执行结果,现有技术在调度各个任务时,没有考虑到各个任务之间的依赖关系,若调度当前任务时,当前任务的依赖任务没有执行完成,则很可能导致当前任务执行错误。可见,现有技术在调度各个任务时,没有考虑到各个任务之间的依赖关系,很可能造成任务执行错误。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种任务调度方法及装置,根据各个任务之间的依赖关系进行任务调度,保证任务执行的准确性。第一方面,本专利技术实施例提供了一种任务调度方法,所述方法包括:接收当前任务的执行完成指令;在接收到所述当前任务的执行完成指令时,检测所述当前任务的执行结果的正确性和完整性;若所述当前任务的执行结果正确并且完整,则调用所述当前任务的下一个任务,否则,中止操作,生成执行结果错误信息并发送出去,其中,各个任务的调用顺序根据各个任务之间的依赖关系确定。结合第一方面,本专利技术实施例提供了第一方面第一种可能的实施方式,其中,调用所述当前任务的下一个任务,包括:检测所述当前任务的下一个任务的数据是否准备完成以及所述下一个任务的执行环境是否可用;若所述下一个任务的数据准备完成且所述下一个任务的执行环境可用,则为所述下一个任务分配服务器资源,触发所述下一个任务启动,否则,中止操作,生成启动错误信息并发送出去。结合第一方面第一种可能的实施方式,本专利技术实施例提供了第一方面第二种可能的实施方式,其中,为所述下一个任务分配服务器资源,包括:将所述下一个任务确定为处于等待状态的任务,检测是否存在除所述下一个任务以外的其他处于等待状态的任务;若不存在,则将当前可用的服务器资源分配至所述下一个任务;若存在,则检测各个所述处于等待状态的任务是否为首次执行,根据检测结果为各个所述处于等待状态的任务分配服务器资源。结合第一方面第二种可能的实施方式,本专利技术实施例提供了第一方面第三种可能的实施方式,其中,根据检测结果为各个所述处于等待状态的任务分配服务器资源,包括:若各个所述处于等待状态的任务均为首次执行,则将当前可用的服务器资源平均分配至各个所述处于等待状态的任务;若各个所述处于等待状态的任务均为非首次执行,则将各个所述处于等待状态的任务的前次执行所用时长作为各个所述处于等待状态的任务的资源权重,按照各个所述处于等待状态的任务的资源权重为各个所述处于等待状态的任务分配服务器资源;若各个所述处于等待状态的任务部分为首次执行,则将各个执行过的所述处于等待状态的任务的前次执行所用时长的平均值作为各个未执行过的所述处于等待状态的任务的前次执行所用时长,将各个所述处于等待状态的任务的前次执行所用时长作为各个所述处于等待状态的任务的资源权重,按照各个所述处于等待状态的任务的资源权重为各个所述处于等待状态的任务分配服务器资源。结合第一方面第一种可能的实施方式,本专利技术实施例提供了第一方面第四种可能的实施方式,其中,在触发所述下一个任务启动之后,所述方法还包括:接收所述下一个任务在执行过程中生成的执行错误信息;在接收到所述执行错误信息时,中止操作,将所述执行错误信息发送出去。第二方面,本专利技术实施例提供了一种任务调度装置,所述装置包括:指令接收模块,用于接收当前任务的执行完成指令;检测模块,用于在接收到所述当前任务的执行完成指令时,检测所述当前任务的执行结果的正确性和完整性;任务调用模块,用于若所述当前任务的执行结果正确并且完整,则调用所述当前任务的下一个任务,否则,中止操作,生成执行结果错误信息并发送出去,其中,各个任务的调用顺序根据各个任务之间的依赖关系确定。结合第二方面,本专利技术实施例提供了第二方面第一种可能的实施方式,其中,所述任务调用模块包括:前置检测单元,用于检测所述当前任务的下一个任务的数据是否准备完成以及所述下一个任务的执行环境是否可用;资源分配单元,用于若所述下一个任务的数据准备完成且所述下一个任务的执行环境可用,则为所述下一个任务分配服务器资源,触发所述下一个任务启动,否则,中止操作,生成启动错误信息并发送出去。结合第二方面第一种可能的实施方式,本专利技术实施例提供了第二方面第二种可能的实施方式,其中,所述资源分配单元包括:任务检测子单元,用于将所述下一个任务确定为处于等待状态的任务,检测是否存在除所述下一个任务以外的其他处于等待状态的任务;第一分配子单元,用于若不存在,则将当前可用的服务器资源分配至所述下一个任务;第二分配子单元,用于若存在,则检测各个所述处于等待状态的任务是否为首次执行,根据检测结果为各个所述处于等待状态的任务分配服务器资源。结合第二方面第二种可能的实施方式,本专利技术实施例提供了第二方面第三种可能的实施方式,其中,所述第二分配子单元具体用于:若各个所述处于等待状态的任务均为首次执行,则将当前可用的服务器资源平均分配至各个所述处于等待状态的任务;若各个所述处于等待状态的任务均为非首次执行,则将各个所述处于等待状态的任务的前次执行所用时长作为各个所述处于等待状态的任务的资源权重,按照各个所述处于等待状态的任务的资源权重为各个所述处于等待状态的任务分配服务器资源;若各个所述处于等待状态的任务部分为首次执行,则将各个执行过的所述处于等待状态的任务的前次执行所用时长的平均值作为各个未执行过的所述处于等待状态的任务的前次执行所用时长,将各个所述处于等待状态的任务的前次执行所用时长作为各个所述处于等待状态的任务的资源权重,按照各个所述处于等待状态的任务的资源权重为各个所述处于等待状态的任务分配服务器资源。结合第二方面第一种可能的实施方式,本专利技术实施例提供了第二方面第四种可能的实施方式,其中,所述任务调用模块还包括:错误信息接收单元,用于在所述资源分配单元触发所述下一个任务启动后,接收所述下一个任务在执行过程中生成的执行错误信息;错误信息发送单元,用于在接收到所述执行错误信息时,中止操作,将所述执行错误信息发送出去。本专利技术实施例中,在接收到当前任务的执行完成指令时,检测当前任务的执行结果的正确性和完整性,若当前任务的执行结果正确并且完整,则调用当前任务的下一个任务,其中,各个任务的调用顺序根据各个任务之间的依赖关系确定。由于各个任务的调用顺序根据各个任务之间的依赖关系确定,因此通过本专利技术实施例中的方法及装置,能够根据各个任务之间的依赖关系进行任务调度,从而保证任务执行的准确性,缓解现有技术在调度各个任务时,没有考虑到各个任务之间的依赖关系,很可能造成任务执行错误的问题。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作本文档来自技高网...
任务调度方法及装置

【技术保护点】
一种任务调度方法,其特征在于,所述方法包括:接收当前任务的执行完成指令;在接收到所述当前任务的执行完成指令时,检测所述当前任务的执行结果的正确性和完整性;若所述当前任务的执行结果正确并且完整,则调用所述当前任务的下一个任务,否则,中止操作,生成执行结果错误信息并发送出去,其中,各个任务的调用顺序根据各个任务之间的依赖关系确定。

【技术特征摘要】
1.一种任务调度方法,其特征在于,所述方法包括:接收当前任务的执行完成指令;在接收到所述当前任务的执行完成指令时,检测所述当前任务的执行结果的正确性和完整性;若所述当前任务的执行结果正确并且完整,则调用所述当前任务的下一个任务,否则,中止操作,生成执行结果错误信息并发送出去,其中,各个任务的调用顺序根据各个任务之间的依赖关系确定。2.根据权利要求1所述的方法,其特征在于,调用所述当前任务的下一个任务,包括:检测所述当前任务的下一个任务的数据是否准备完成以及所述下一个任务的执行环境是否可用;若所述下一个任务的数据准备完成且所述下一个任务的执行环境可用,则为所述下一个任务分配服务器资源,触发所述下一个任务启动,否则,中止操作,生成启动错误信息并发送出去。3.根据权利要求2所述的方法,其特征在于,为所述下一个任务分配服务器资源,包括:将所述下一个任务确定为处于等待状态的任务,检测是否存在除所述下一个任务以外的其他处于等待状态的任务;若不存在,则将当前可用的服务器资源分配至所述下一个任务;若存在,则检测各个所述处于等待状态的任务是否为首次执行,根据检测结果为各个所述处于等待状态的任务分配服务器资源。4.根据权利要求3所述的方法,其特征在于,根据检测结果为各个所述处于等待状态的任务分配服务器资源,包括:若各个所述处于等待状态的任务均为首次执行,则将当前可用的服务器资源平均分配至各个所述处于等待状态的任务;若各个所述处于等待状态的任务均为非首次执行,则将各个所述处于等待状态的任务的前次执行所用时长作为各个所述处于等待状态的任务的资源权重,按照各个所述处于等待状态的任务的资源权重为各个所述处于等待状态的任务分配服务器资源;若各个所述处于等待状态的任务部分为首次执行,则将各个执行过的所述处于等待状态的任务的前次执行所用时长的平均值作为各个未执行过的所述处于等待状态的任务的前次执行所用时长,将各个所述处于等待状态的任务的前次执行所用时长作为各个所述处于等待状态的任务的资源权重,按照各个所述处于等待状态的任务的资源权重为各个所述处于等待状态的任务分配服务器资源。5.根据权利要求2所述的方法,其特征在于,在触发所述下一个任务启动之后,所述方法还包括:接收所述下一个任务在执行过程中生成的执行错误信息;在接收到所述执行错误信息时,中止操作,将所述执行错误信息发送出去。6.一种任务调度装置,其特征在于,所述装置包括:指令接收模块,用于接收当前...

【专利技术属性】
技术研发人员:何攀
申请(专利权)人:北京票之家科技有限公司
类型:发明
国别省市:北京;11

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

1