詹金斯在许多下游工作岗位上的工作很难加载

时间:2014-05-06 13:29:37

标签: performance groovy jenkins aggregation

我有Jenkins的工作,当我试图在Jenkin的控制面板中浏览它时经常无法加载。我收到502错误。其他时候加载缓慢,有时加载很快没有错误。有时候控制面板的其他部分很难加载,但感觉就像这个页面一样。

作业的功能是使用groovy对大约300个下游作业的动态集合进行排队,然后汇总他们的测试结果。 / job / Job_Name页面中的子项目列表未解析,因为它是一个变量,所以我认为(可能)不会导致缓慢。

jenkins进程通常消耗最多24%的机器内存(大约8 GB中的2个),但高达350%的CPU(4核系统),即使Jenkins没有运行构建。该实例具有~25个从属节点和~350个作业。我已经将视图配置为包含有关作业的最少信息,并且我只保留1天的构建历史记录。

是测试结果聚合导致加载速度慢,还是有其他可能是问题的根源?

谢谢你, 乔希

1 个答案:

答案 0 :(得分:0)

问题原来是复制和指纹工件。一旦我删除了工件的创建,指纹识别和复制,性能问题就完全消失了。工件是聚合测试结果的必要步骤,但由于我有300多个下游工作复制工件,结果是性能拖累太多了。

我最终实现的解决方案是在Jenkin的主服务器上创建一个MySQL数据库,然后使用每个作业的结果来插入,聚合和搜索结果。由于Jenkins在格式化TAP方面很慢,我最终创建了自己的小网站来显示结果。