一种基于最小堆的jenkins任务可变加权排列控制方法技术

技术编号:40908556 阅读:16 留言:0更新日期:2024-04-18 14:38
本发明专利技术公开了一种基于最小堆的jenkins任务可变加权排列控制方法,涉及分布式应用控制领域,通过jenkins控制台界面或接口中下发项目的构建任务,并根据构建任务所属项目的项目编号查找并计算相关参数;融合用户对本次任务设定的优先级与该项目上一次构建成功的相关结果,计算得出本次构建任务的耗时预期值;对构建任务进行排列;通过自动加权平衡构建任务在耗时时间轴的平衡,达到总体构建任务显著提升的效果;构建任务在可变加权的设计下,实现可人为控制构建任务的优先级;构建任务基于最小堆排列,执行器可快速获取到该任务并执行;同一个项目的构建任务的预期值是动态优化的,达到基于构建任务自身特点、构建机器的负载以及其它因素制约的平衡值。

【技术实现步骤摘要】

本专利技术属于分布式应用控制领域,尤其涉及一种基于最小堆的jenkins任务可变加权排列控制方法


技术介绍

1、jenkins是持续集成和持续交付的事实标准。它不仅具有了有好的操作界面,而且提供了丰富的rest风格的接口,以方便用户进行使用和管理。jenkins用户或管理员通常是以项目为单位进行管理的,而jenkins内部的最小执行单元是构建任务,一个项目中可以不断产生新的构建任务,最后构建任务被执行单元执行。在现有的jenkins任务处理体系中,执行单元是从构建任务队列中一个一个获取任务并执行,那么,构建任务队列的排序则显得十分重要。但是,jenkins作为开源工具,采用了较为公平的先进先出的队列模型。

2、通过以上信息可知,在构建执行机器数量固定或有限时,构建任务执行时间差距较大时(跨越数量级),先进先出的任务队列模型使得jenkins整体的构建效率降低,甚至阻塞。


技术实现思路

1、本专利技术所要解决的技术问题是针对
技术介绍
的不足提供一种基于最小堆的jenkins任务可变加权排列控制方法,本文档来自技高网...

【技术保护点】

1.一种基于最小堆的jenkins任务可变加权排列控制方法,其特征在于:具体包含如下步骤:

2.根据权利要求1所述的一种基于最小堆的jenkins任务可变加权排列控制方法,其特征在于,所述步骤1具体包含如下步骤:通过jenkins控制台界面或接口中下发项目的构建任务,jenkins控制器会校验相关任务参数来生成构建任务,并下发到构建任务控制器,构建任务控制器根据构建任务所属项目的项目编号查找并计算相关参数。

3.根据权利要求2所述的一种基于最小堆的jenkins任务可变加权排列控制方法,其特征在于:在步骤1中,在创建新的构建任务时,构建任务控制器需要查找该任务所在...

【技术特征摘要】

1.一种基于最小堆的jenkins任务可变加权排列控制方法,其特征在于:具体包含如下步骤:

2.根据权利要求1所述的一种基于最小堆的jenkins任务可变加权排列控制方法,其特征在于,所述步骤1具体包含如下步骤:通过jenkins控制台界面或接口中下发项目的构建任务,jenkins控制器会校验相关任务参数来生成构建任务,并下发到构建任务控制器,构建任务控制器根据构建任务所属项目的项目编号查找并计算相关参数。

3.根据权利要求2所述的一种基于最小堆的jenkins任务可变加权排列控制方法,其特征在于:在步骤1中,在创建新的构建任务时,构建任务控制器需要查找该任务所在项目中前一次构建任务成功的耗时记录,若新的构建任务是项目的初始构建或找不到有最近一次的成功历史记录,则计算实时构建队列的平均值做为它的上一次构建成功的耗时值。

4.根据权利要求1所述的一种基于最小堆的jenkins任务可变加权排列控制方法,其特征在于,所述步骤2具体包含如下步骤:获取用户对本次任务设定的优先级,转换成设定的加权策略,再结合该构建任务所在项目上一次构建成功的相关结果,计算本次构建任务的耗时预期值。

5.根据权利要求4所述的一种基于最小堆的jenkins任务可变加权排列控制方法,其特征在于:在步骤2中,计算构建任务的预期值具体通过项目最近一次构建任务的成功耗时与用户设定的加权值融合,计算得到本次构建任务的期望值。

6.根据权利...

【专利技术属性】
技术研发人员:汤俊凯张其栋李永信姜岢妤陈世强李志辉
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

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

1