任务调度方法技术

技术编号:37844633 阅读:8 留言:0更新日期:2023-06-14 22:28
本申请涉及一种任务调度方法。该任务调度方法包括:构建多个任务流的调度拓扑图,其中,任务流中包括至少一个工作节点且至少一个工作节点包括尾部工作节点和约束节点中的至少一者,约束节点关联相邻的下游侧任务流;利用约束节点确定执行任务流,按照调度拓扑图所约定的运行顺序,依次触发执行任务流中各工作节点运行。采用本方法实现跨任务流的任务调度,在对工作节点的执行顺序产生约束同时有利于提高执行可靠性,还有利于形成可视化任务流页面。面。面。

【技术实现步骤摘要】
任务调度方法


[0001]本申请涉及计算机处理
,特别是涉及一种任务调度方法。

技术介绍

[0002]在针对涉及任务流程中涉及多个任务流执行任务时,需要人工看守任务执行,即看守当前任务节点执行补偿。并且,在当前任务流节点执行完成后,由人工查找当前任务节点的下游侧的任务流节点,将下游侧的任务流节点作为新的当前任务流节点;换言之,在任务流执行完后才能更换执行下一个,无法做到任务流执行完成后自动吊起下游侧任务流,并且耗费大量的人力和时间。

技术实现思路

[0003]基于此,有必要针对上述技术问题,提供一种实现跨任务流的任务调度,在对工作节点的执行顺序产生约束同时有利于提高执行可靠性,还有利于形成可视化任务流页面的任务调度方法。
[0004]一方面,提供一种任务调度方法,该任务调度方法方法包括:构建多个任务流的调度拓扑图,其中,任务流中包括至少一个工作节点且至少一个工作节点包括尾部工作节点和约束节点中的至少一者,约束节点关联相邻的下游侧任务流;利用约束节点确定执行任务流,按照调度拓扑图所约定的运行顺序,依次触发执行任务流中各工作节点运行。
[0005]在其中一个实施例中,利用调度拓扑图中的约束节点确定执行任务流包括:响应于触发执行任务流的约束节点,反馈约束节点所关联的下游侧任务流;检查下游侧任务流所关联的至少一个约束节点是否均被触发;响应于所关联的至少一个约束节点均被触发,将该下游侧任务流作为新的执行任务流。
[0006]在其中一个实施例中,工作节点还包括头部任务节点,头部工作节点未关联约束节点且上游侧未关联工作节点;利用约束节点确定执行任务流之前包括:调度调度拓扑图,将头部工作节点所处任务流作为执行任务流,按照调度拓扑图所约定的运行顺序,依次触发执行任务流中各工作节点运行。
[0007]在其中一个实施例中,任务调度方法还包括:响应于工作节点运行异常,按照选取规则选中与运行错误的工作节点所关联的工作节点;对所选中的工作节点进行批次检查。
[0008]在其中一个实施例中,按照选取规则选中与运行错误的工作节点所关联的工作节点包括:查询调度拓扑图,获取与运行错误的工作节点所关联的尾部工作节点;选中所关联的尾部工作节点以及所关联的尾部工作节点上游侧所关联的各工作节点。
[0009]在其中一个实施例中,按照选取规则选中与运行错误的工作节点所关联的工作节点包括:响应于运行异常的工作节点下游侧所关联的工作节点运行正常,取消选中正常运行的工作节点以及正常运行的工作节点下游侧所关联的工作节点。
[0010]在其中一个实施例中,工作节点运行异常包括:工作节点运行错误;和/或,配置异常提示的工作节点触发异常提示。
[0011]在其中一个实施例中,构建多个任务流的调度拓扑图包括:对所生成的任务流实例进行批次检查;响应于任务流通过批次检查,基于约束节点串联多个任务流,形成调度拓扑图。
[0012]在其中一个实施例中,对所生成的任务流实例进行批次检查包括:利用多线程按照各任务流的预设生成频率生成各任务流实例;依次对各任务流实例进行批次检查;响应于任务流实例通过批次检查,提交状态机进行状态迁移;响应于任务流实例未通过批次检查,将其写入批次缓存队列,提交状态机进行状态迁移,且等待其上游侧所关联的任务流实例批次检查通过,再次拉起任务流实例进行批次检查。
[0013]在其中一个实施例中,任务调度方法还包括:自数据库中调用任务数据,将任务数据存储于至少一个缓存模块;其中,至少一个缓存模块包括任务缓存模块、关系缓存模块以及实例缓存模块中的至少一者。
[0014]上述任务调度方法,任务流具有关联的上游侧任务流时,会在上游侧任务流内配置本任务流的前置约束节点,即约束节点关联相邻的下游侧任务流。并且,上述任务调度方法中利用约束节点确定执行任务流,换言之,在上游侧任务流触发约束节点时,能够自动吊起本任务流执行任务,以实现跨任务流的任务调度,在对工作节点的执行顺序产生约束同时有利于提高执行可靠性。与此同时,上述任务调度方法构建多个任务流的调度拓扑图,可以控制显示调度拓扑图,以将多个任务流中各工作节点的运行顺序直观地进行展示,从而有利于形成可视化任务流页面。
附图说明
[0015]图1是本申请任务调度方法一实施例的应用环境图;
[0016]图2是本申请任务调度方法一实施例的流程示意图;
[0017]图3是本申请调度拓扑图一实施例的结构示意图;
[0018]图4是本申请任务调度方法另一实施例的流程示意图;
[0019]图5是本申请构建调度拓扑图一实施例的流程示意图;
[0020]图6是本申请任务调度系统一实施例的结构示意图;
[0021]图7是本申请计算机设备一实施例的内部结构图。
具体实施方式
[0022]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0023]本申请提供的任务调度方法,可以应用于如图1所示的应用环境中,图1是本申请任务调度方法一实施例的应用环境图。
[0024]终端102通过网络与服务器104通过网络进行通信。本申请可以通过应用于跨任务流的任务调度过程中,主要是通过构建调度拓扑图基于执行顺序串联多个任务流,各任务流执行完成后自动吊起下游侧的任务流,以及实现跨任务流的任务调度,在对工作节点的执行顺序产生约束同时有利于提高执行可靠性,还有利于形成可视化任务流页面。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴
设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0025]在一实施例中,如图2所示,提供了一种任务调度方法,图2是本申请任务调度方法一实施例的流程示意图。以任务调度方法应用于图1中的服务器为例进行说明,包括以下步骤:
[0026]S201:构建多个任务流的调度拓扑图,其中,任务流中包括至少一个工作节点且至少一个工作节点包括尾部工作节点和约束节点中的至少一者,约束节点关联相邻的下游侧任务流。
[0027]在本实施例中,任务流为按照一定的业务规则划分的任务分组。调度拓扑图由多个任务流所构建,即调度拓扑图为由各任务流的工作节点按照运行顺序所构成的网络结构图。尾部工作节点下游侧未关联工作节点。约束节点相当于下游侧任务流的前置事件,下游侧任务依赖所关联的约束节点流执行任务。
[0028]具体地,一个任务流中包括至少一个工作节点,且该至少一个工作节点包括尾部工作节点和约束节点中的至少一者。换言之,一个任务流中应当包括尾部工作节点和约束节点中的至少一者。基于约束节点所具有的承上启下的作用,将多个任务流按照运行顺序联接构成调度拓扑图。
[0029]S202:利用约束节点确定执行任务流,按照调度拓扑图所约定的运行顺序,依次触发执行任务流中各工作节点运行。...

【技术保护点】

【技术特征摘要】
1.一种任务调度方法,其特征在于,包括:构建多个任务流的调度拓扑图,其中,所述任务流中包括至少一个工作节点且所述至少一个工作节点包括尾部工作节点和约束节点中的至少一者,所述约束节点关联相邻的下游侧任务流;利用所述约束节点确定执行任务流,按照所述调度拓扑图所约定的运行顺序,依次触发所述执行任务流中各工作节点运行。2.根据权利要求1所述的任务调度方法,其特征在于,利用所述调度拓扑图中的所述约束节点确定执行任务流包括:响应于触发所述执行任务流的所述约束节点,反馈所述约束节点所关联的下游侧任务流;检查所述下游侧任务流所关联的至少一个所述约束节点是否均被触发;响应于所述所关联的至少一个所述约束节点均被触发,将该所述下游侧任务流作为新的所述执行任务流。3.根据权利要求1或2所述的任务调度方法,其特征在于,所述工作节点还包括头部任务节点,所述头部工作节点未关联所述约束节点且上游侧未关联工作节点;所述利用所述约束节点确定执行任务流之前包括:调度所述调度拓扑图,将头部工作节点所处任务流作为所述执行任务流,按照所述调度拓扑图所约定的运行顺序,依次触发所述执行任务流中各工作节点运行。4.根据权利要求1所述的任务调度方法,其特征在于,所述任务调度方法还包括:响应于所述工作节点运行异常,按照选取规则选中与运行错误的所述工作节点所关联的工作节点;对所选中的工作节点进行批次检查。5.根据权利要求4所述的任务调度方法,其特征在于,所述按照选取规则选中与运行错误的所述工作节点所关联的工作节点包括:查询所述调度拓扑图,获取与运行错误的所述工作节点所关联的尾部工作节点;...

【专利技术属性】
技术研发人员:王存泉
申请(专利权)人:苏宁易购集团股份有限公司
类型:发明
国别省市:

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

1