[发明专利]一种持续集成流水线的加速方法和装置在审
| 申请号: | 202211590451.6 | 申请日: | 2022-12-10 |
| 公开(公告)号: | CN115794231A | 公开(公告)日: | 2023-03-14 |
| 发明(设计)人: | 李霄;李武;刘金敏;范岚;周鑫 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
| 主分类号: | G06F9/38 | 分类号: | G06F9/38 |
| 代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 董婕 |
| 地址: | 430000 湖北省武*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 持续 集成 流水线 加速 方法 装置 | ||
本申请公开了一种持续集成流水线的加速方法和装置,通过根据流水线中各个任务多次执行时生成构建产物的时间和请求前一个任务的构建产物的时间,计算各个任务对应的最早执行时间;本次流水线执行时,在对应的最早执行时间内提前执行各个任务,以缩短各个任务请求前一个任务的构建产物与对应的前一个任务生成构建产物的时间差。能够使得流水线中的任务灵活的提前执行,减少了任务执行中不必要的等待时间,能够有效的缩短流水线的执行时间进而提高产品的研发效率。并且在对应的最早执行时间内提前执行各个任务,能够保证流水线执行时逻辑上保持构建的基本流程且对最终构建结果没有影响。
技术领域
本申请涉及软件持续集成技术领域,尤其涉及一种持续集成流水线的加速方法和装置。
背景技术
随着软件开发规模和复杂度的迅速增长,对软件开发效率和质量的保证显得尤为重要。软件的持续集成过程是软件开发人员将自己开发的代码持续地集成到一个开发主线上,以进行代码的规范检查、编译、部署以及自动化测试。持续集成过程能够帮助开发人员快速发现软件开发和集成过程中的问题,从而帮助开发人员尽早的解决代码问题。开发人员在开发或修改完成代码后,一般希望快速看到持续集成流水线的执行结果,以根据执行的结果来进行下一阶段的工作,从而保证能够按期生成可交付的软件。
相关技术中,持续集成流水线在执行任务时,后面的任务会用到前面一个任务的构建产物,因此对于流水线中的各个任务一般采用串行执行,即需要在前一个任务执行完成后再开始执行下一个任务,来保证任务构建成功。持续集成流水线在串行执行时执行步骤多且复杂,开发人员有时需要等待较长时间,才能看到代码修改的流水线执行结果,这严重影响代码开发效率。
因此,如何缩短持续集成流水线的执行时间,以实现持续集成流水线的加速是亟待解决的技术问题。
发明内容
本申请的主要目的在于提供一种持续集成流水线的加速方法和装置,旨在解决相关技术中流水线集成时各个任务串行执行,集成效率低的技术问题。
第一方面,本申请提供一种持续集成流水线的加速方法,所述方法包括以下步骤:
根据流水线中各个任务多次执行时生成构建产物的时间和请求前一个任务的构建产物的时间,计算各个任务对应的最早执行时间;
本次流水线执行时,在对应的最早执行时间内提前执行各个任务,以缩短各个任务请求前一个任务的构建产物与对应的前一个任务生成构建产物的时间差。
一些实施例中,所述本次流水线执行时,在对应的最早执行时间内提前执行各个任务,以缩短各个任务请求前一个任务的构建产物与对应的前一个任务生成构建产物的时间差,具体包括以下步骤:
根据对应的最早执行时间提前执行各个任务,使得各个任务请求前一个任务的构建产物的时刻,与对应的前一个任务生成构建产物的时刻相吻合。
一些实施例中,所述本次流水线执行时,在对应的最早执行时间内提前执行各个任务,以缩短各个任务请求前一个任务的构建产物与对应的前一个任务生成构建产物的时间差,还包括以下步骤:
接收输入的各个任务的提前执行时间;
判断若根据所述提前执行时间提前执行对应任务,各个任务的开始执行时间是否在对应的最早执行时间之后;
若是,则根据所述提前执行时间提前执行对应任务,否则,根据对应的最早执行时间提前执行各个任务。
一些实施例中,根据所述提前执行时间提前执行对应任务之前,还包括以下步骤:
确定所述提前执行时间是否为正整数时间;
若是,则根据所述提前执行时间提前执行对应任务,否则,不根据所述提前执行时间提前执行对应任务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211590451.6/2.html,转载请声明来源钻瓜专利网。





