System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于软件研发管理的,主要应用于对业务安全系数高、流程管控严格的传统行业,诸如银行、保险、证券和汽车制造等,尤其是涉及基于流水线并发执行中构建机资源排队的方法、装置及介质。
技术介绍
1、在devops软件研发方法论中,其核心理念之一就是自动化。而要在devops持续集成平台内实现工程自动化,则需要通过ci流水线来自动化完成一系列重复性高、价值度低的技术动作,诸如开发人员提交代码后的编译构建、代码扫描、制品晋级、单元测试和部署发布等。ci流水线让整个软件研发过程就像工业流水线一样流畅,减少大量手工操作,提升软件研发效能,降低人工出错风险。
2、在现有的ci(持续集成)流水线技术架构中,存在着一些明显的技术难题需要去解决。最主要的问题之一是在大量任务并发执行的情况下,由于构建机资源的有限性,往往导致部分任务必须在获取到空闲构建机资源前处于等待状态,这就大大降低了整体的执行效率,影响了软件研发的进度。
3、另外,我们注意到,现有的构建机资源管理和调度方式大多采取先到先得的模式进行资源分配。这种做法在一定程度上确实简单方便,但显然无法保证资源的优先级使用。也就是说,在复杂的实际操作中,很有可能出现优先级高的重要任务因为无法及时获取到所需的构建机资源,反而被优先级低的次要任务所"阻塞"的情况,这无疑会造成项目进度的延误和资源的浪费。
4、因此,本专利技术需要解决的技术问题就是怎样设计一种有效的策略和方法,使得在流水线并发执行任务的过程中,我们能合理地对待拥挤的构建机资源问题,营造一个稳定、公平
技术实现思路
1、本申请实施例提供了基于流水线并发执行中构建机资源排队的方法、装置及介质,以解决相关技术存在的问题,技术方案如下:
2、第一方面,本申请实施例提供了基于流水线并发执行中构建机资源排队的方法,包括:
3、步骤1构建触发和资源选择的方法中,如图2和图3所示,devops持续集成平台注册并管理的构建机是由多种类型,如第三方和公共构建机等,使用不同的硬件和系统环境。这使得所述devops持续集成平台能够根据不同的任务需求动态选择适合的构建机。当用户启动构建任务的时候,流水线将根据用户选择的构建机资源类型选择合适的构建机。如果未指定,则默认选择资源使用较低的构建机。此外,平台实施了负载均衡策略,优化各种因素,如当前构建机的负载和等待的任务数量,以保证构建机资源的合理利用,提升构建效率。所有的过程和当前的构建机状态都会实时在流水线配置管理页面显示,便于用户监控与管理;
4、步骤2构建机调度并发设置中, devops持续集成平台能够根据配置指令,添加至少一个流水线的并发数配置项,并在流水线配置管理页面进行展示。如图4所示,这些配置项包括流水线中允许并发执行的最大任务数。接着,平台会记录和保存用户设定的并发数配置,并生成至少一个目标并发数配置项,以实现用户自定义并发数服务的集成到devops平台。然后,平台会响应流水线运行指令,根据设定的目标并发数配置和实际运行数据采取流水线排队策略,并显示当前流水线任务并发执行情况。也就是说,平台会根据目标并发数配置和执行数据在并发状态操作页面显示任务的并发数指标数据。用户可以添加或修改并发数配置以满足需求,但也需要考虑系统资源的承受能力,以防过高并发数导致系统过载或崩溃;
5、步骤3流水线排队机制中,如图7在用户启动流水线指令时,devops持续集成平台会首先检查当前正在执行的流水线数量。启动指令可以是手动的,也可以是代码或远程触发的。接下来,平台会根据系统设置的流水线并发数量进行评估。如果当前执行的流水线数量在系统设置的并发上限内,新的流水线任务就会被添加到执行队列,并显示为“立即执行”的状态。如果当前执行的流水线数量超过了系统设定的并发上限,新的流水线任务则会被加入到等待队列,状态标记为“等待执行”并显示相关提示信息。当有构建机资源可用时,平台会响应流水线调度指令,根据负载均衡策略自动调度等待队列中的位于前列的流水线任务,并更新其状态为“立即执行”。系统设置的并发上限可以根据资源状况和用户需求进行动态调整,而负载均衡策略则可以确保构建机资源的合理使用和提高构建效率;
6、本专利技术步骤4流水线执行引擎中,所述流水线执行引擎管理着流水线中的各种阶段和任务,如图5和图6所示。通过devops持续集成平台,能响应流水线的配置指令,自动定义和记录流水线各阶段和任务的执行顺序、依赖关系及并发规则。平台响应执行指令来启动流水线,由所述流水线执行引擎按照预定义的顺序、依赖和并发规则,自动触发并监控流水线中的各阶段和任务的执行。此外,通过devops持续集成平台响应状态检查指令,实时读取和更新任务执行状态。一旦任务失败,执行引擎即时标记任务状态并显示错误提示。如果任务成功,执行引擎会自动调度下一个待执行的任务。所有这些操作都在流水线运行状态页面实时显示,使用户能实时监控流水线运行状态、执行进度以及查看任务执行结果。流水线配置指令包括添加、删除、修改流水线任务和阶段的命令,任务间的执行依赖关系和执行顺序可以根据任务间的依赖关系和用户设定的执行顺序进行自定义配置。
7、第二方面,本申请实施例还提供了一种基于流水线并发执行中构建机资源排队的装置,应用如上述任一种实施方式中的方法,包括:
8、流水线管理模块,负责管理多种类型的构建机,如第三方构建机和公共构建机等,并可以根据不同的任务需求,动态选择适合的构建机进行构建任务;
9、响应模块,能响应于用户启动的构建触发指令,选择符合用户需求的构建机进行相应的构建任务。如果用户没有特定选择构建机资源类型,流水线会默认选择资源使用率较低的构建机进行构建任务;
10、负载均衡模块,实现了一种负载均衡的调度策略,可以根据多个因素如当前构建机的负载、等待的构建任务数量等进行优化,确保构建机资源的合理利用,并尽可能提高构建效率;
11、实时展示模块,负责在流水线配置管理页面中实时显示构建触发和资源选择的过程,并显示构建机的当前状态,如“空闲”、“忙碌”、“执行中”等,便于用户进行实时监控和管理。
12、此外,所述一种基于流水线并发执行中构建机资源排队的装置,还包括:存储器和处理器。所述存储器中存储指令,指令由所述处理器加载并执行,以实现所述流水线管理模块、响应模块、负载均衡模块以及实时展示模块中任一模块的任务。其中,所述存储器和处理器通过内部连接通路互相通信。
13、第三方面,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被计算机执行时,实现上述各方面任一种实施方式中的方法。
14、上述技术方案中的优点或有益效果至少包括:
15、1、本申请使用了devops持续集成平台对构建机进行动态管理,充分提高本文档来自技高网...
【技术保护点】
1.基于流水线并发执行中构建机资源排队的方法,其特征在于,包括:
2.根据权利要求1所述的基于流水线并发执行中构建机资源排队的方法,其特征在于,构建触发和资源选择的方法为:
3.根据权利要求1所述的基于流水线并发执行中构建机资源排队的方法,其特征在于,构建机调度并发设置:
4.根据权利要求1所述的基于流水线并发执行中构建机资源排队的方法,其特征在于,流水线排队机制:
5.根据权利要求1所述的基于流水线并发执行中构建机资源排队的方法,其特征在于,流水线执行引擎:
6.一种基于流水线并发执行中构建机资源排队的装置,其特征在于,应用如权利要求1-5任一项所述的方法,包括:
7.根据权利要求6所述的一种基于流水线并发执行中构建机资源排队的装置,其特征在于,还包括:
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一个程序;当所述至少一个程序被处理器执行时,实现如权利要求1-5任一项所述的方法。
【技术特征摘要】
1.基于流水线并发执行中构建机资源排队的方法,其特征在于,包括:
2.根据权利要求1所述的基于流水线并发执行中构建机资源排队的方法,其特征在于,构建触发和资源选择的方法为:
3.根据权利要求1所述的基于流水线并发执行中构建机资源排队的方法,其特征在于,构建机调度并发设置:
4.根据权利要求1所述的基于流水线并发执行中构建机资源排队的方法,其特征在于,流水线排队机制:
5.根据权利要求1所述的基于流水线...
【专利技术属性】
技术研发人员:白易,杨晶,张鹏,彭一宽,
申请(专利权)人:广州嘉为科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。