分布式集成任务的执行方法、装置、设备及存储介质与流程
- 国知局
- 2024-10-15 10:07:23
本发明涉及分布式调度,尤其涉及一种分布式集成任务的执行方法、装置、设备及存储介质。
背景技术:
1、在软件开发领域中,持续集成是一种将代码频繁集成到共享存储库中的实践,其执行策略影响着软件开发的效率。
2、相关技术中,传统的持续集成系统往往定时触发给执行器,任务于执行器之间的分配是随机的,这种情况下有一些时间相关性比较强的任务处理效率低下,例如git任务用于将代码拉取到执行器上,maven任务要将代码打包,如果分别为这两类任务分配两个执行器,maven任务在寻找代码的过程中效率低下,导致并行执行效果较差。
3、综合以上该技术领域发展状况分析,现有的技术中方案缺少将完整的分布式集成任务切分,将相同任务类型的子任务分配给同一个执行器的方案。
技术实现思路
1、本发明的目的在于提供一种分布式集成任务的执行方法、装置、设备及存储介质,旨在解决现有技术中的上述问题。
2、根据本发明实施例的第一方面,提供一种分布式集成任务的执行方法,包括:
3、步骤1,定义分布式集成任务,将分布式集成任务中各个任务节点抽象为组件,基于组件生成完整的工作流图;
4、步骤2,通过调度器识别工作流图各组件的前置依赖,并生成将相同任务类型的组件分配给同一执行器的组件分配表;
5、步骤3,在当前执行批次中,通过调度器获取前置依赖处理完毕或没有前置依赖的所有组件,形成待执行序列,将待执行序列推入调度队列;
6、步骤4,基于组件分配表中的分配规则,将待执行序列中各组件从调度队列调度至对应的执行器;
7、步骤5,通过各执行器执行组件对应的任务;
8、步骤6,重复执行步骤3至步骤5,直到所有任务节点都执行完毕。
9、根据本发明实施例的第二方面,提供一种分布式集成任务的执行装置,包括:
10、预处理模块,用于定义分布式集成任务,将分布式集成任务中各个任务节点抽象为组件,基于组件生成完整的工作流图;
11、调度器,用于识别工作流图各组件的前置依赖,并生成将相同任务类型的组件分配给同一执行器的组件分配表;在当前执行批次中,获取前置依赖处理完毕或没有前置依赖的所有组件,形成待执行序列,将待执行序列推入调度队列;
12、分配模块,用于基于组件分配表中的分配规则,将待执行序列中各组件调度至对应的执行器;
13、执行器,用于执行组件对应的任务。
14、根据本发明实施例的第三方面,提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现如本公开第一方面所提供的分布式集成任务的执行方法的步骤。
15、根据本发明实施例的第四方面,提供一种计算机可读存储介质,其上存储有信息传递的实现程序,该程序被处理器执行时实现本公开第一方面所提供的分布式集成任务的执行方法的步骤。
16、本发明实施例提供的技术方案包括以下有益效果:将分布式基成任务切分为各个任务节点,将相同任务类型的任务节点分配给同一执行器,分配至同一执行器内的各个任务节点之间相关性较强,后执行节点可在前面执行完毕结果的基础上直接执行任务,不需要额外从其它执行器上获取数据,提升了分布式集成任务的并行效率。
17、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
技术特征:1.一种分布式集成任务的执行方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述通过调度器识别所述工作流图各组件的前置依赖具体包括:
3.根据权利要求1所述的方法,其特征在于,所述通过调度器获取所述前置依赖处理完毕或没有前置依赖的所有组件,形成待执行序列具体包括:
4.根据权利要求1所述的方法,其特征在于,所述将所述待执行序列中各组件从调度队列调度至对应的执行器具体包括:采用轮询执行器方式将待执行序列中各组件从调度队列调度至对应的执行器。
5.根据权利要求4所述的方法,其特征在于,所述采用轮询执行器方式将待执行序列中各组件从调度队列调度至对应的执行器具体包括:
6.根据权利要求1所述的方法,其特征在于,所述通过各执行器执行组件对应的任务具体包括:当执行器获取到对应的组件时,执行该组件对应的任务,执行结束后将执行结果存储到该执行器内。
7.一种分布式集成任务的执行装置,其特征在于,包括:
8.根据权利要求7所述的装置,其特征在于,所述装置进一步包括:
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述的分布式集成任务的执行方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现如权利要求1至6中任一项所述的分布式集成任务的执行方法的步骤。
技术总结本发明提供了一种分布式集成任务的执行方法、装置、设备及存储介质,其中,方法包括:步骤1,定义分布式集成任务,将分布式集成任务中各个任务节点抽象为组件,生成完整的工作流图;步骤2,通过调度器识别工作流图各组件的前置依赖,生成将相同任务类型的组件分配给同一执行器的组件分配表;步骤3,在当前执行批次中,通过调度器获取前置依赖处理完毕或没有前置依赖的所有组件,形成待执行序列,将待执行序列推入调度队列;步骤4,基于组件分配表中的分配规则,将待执行序列中各组件从调度队列调度至对应的执行器;步骤5,通过各执行器执行组件对应的任务;步骤6,重复执行步骤3至步骤5直到所有任务节点都执行完毕。技术研发人员:辛昌浩,曾伟,张林,孙红亮,余松海,沈亚飞受保护的技术使用者:数字郑州科技有限公司技术研发日:技术公布日:2024/10/10本文地址:https://www.jishuxx.com/zhuanli/20241015/316498.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表