加载Jenkins作业配置页面很慢,没有正在运行的作业

问题描述 投票:0回答:1

目前,当我们尝试打开Jenkins配置页面时,它需要45秒,而对于其他页面,如请求查看作业或查看控制台输出,则需要不到3秒。基于线程转储分析结果,我们获得了一个CPU'Spike'作为描述

“你的应用程序可能会受到高CPU的影响。”查看线程报告,我们看不到任何阻塞状态,但有一个可疑状态:“1个线程无限循环:DestroyJavaVM”

不幸的是,我们无法确定这个高CPU的原因,也可能无法确定相关的无限循环。

到目前为止,我们已经采取了一些步骤来通过重新启动Jenkins来提高性能,从55秒到45秒,结果快10秒。我们将JVM最小/最大内存参数重新定义为相同并将炒作增加到4 Gb,它不会产生任何影响。我们使用相同的操作系统创建一个干净的测试Jenkins实例,该实例具有相同的Jenkins版本,相同的已安装插件和作业配置。新测试Jenkins实例的作业配置页面的负载小于3秒。我们不确定是否可以根据此测试排除已安装的插件作为主要问题。

欢迎任何其他建议来跟踪问题。

ThreadDump Analyse Report

我们正在使用: - Windows Server 2008 R2 Enterprise sp1 - Jenkins(Master):版本2.89.1 - Java:JRE 1.8.0_112 - 客户端webbrowser Google Chrome Versie 61.0.3163.100(Officiëlebuild)(64位)已安装的插件:Ant插件 - 1.7 Apache HttpComponents客户端4.x API插件 - 4.5.3-2.0 Artifactory插件 - 2.13.1认证令牌API插件 - 1.3 Autofavorite for Blue Ocean - 1.2.1 Bitbucket分支源插件 - 2.2.7 Bluebucket管道蓝海 - 1.3.4 Blue Ocean - 1.3.4 Blue Ocean Pipeline Editor - 1.3.4 bouncycastle API插件 - 2.16.2 Branch API插件 - 2.0.15 build-name-setter - 1.6.7 Blue Ocean的通用API - 1.3.4条件BuildStep - 1.3.6蓝海配置API - 1.3.4配置文件提供程序插件 - 2.16.4复制工件插件 - 1.39凭证绑定插件 - 1.13凭据插件 - 2.1.16自定义构建标签 - 1.1 CVS插件 - 2.13蓝海仪表板 - 1.3.4仪表板视图 - 2.9.11丢弃旧版本插件 - 1.05磁盘使用插件 - 0.2 8显示上游更改 - 0.3.2显示URL API - 2.2.0 Blue Ocean的显示URL - 2.2.0 Docker Commons插件 - 1.9 Docker Pipeline - 1.14 Durable Task Plugin - 1.17 EnvInject API插件 - 1.4环境注入器插件 - 2.1.5 Blue Ocean的事件API - 1.3.4外部监视器作业类型插件 - 1.7收藏夹 - 2.3.1文件夹插件 - 6.2.1 Git客户端插件 - 蓝海的2.6.0 Git管道 - 1.3.4 Git插件 - 3.6.4 GIT服务器插件 - 1.7 GitHub API插件 - 1.90 GitHub分支源插件 - 2.3.1 GitHub管道蓝海 - 1.3.4 GitHub插件 - 1.28.1 Gradle插件 - 1.28 HTML Publisher插件 - 1.14 i18n for Blue Ocean - 1.3.4 Icon Shim插件 - 2.0.3 Ivy插件 - 1.28 Jackson 2 API插件 - 2.8.7.0 Javadoc插件 - 1.4 JavaScript GUI Lib:ACE编辑器捆绑插件 - 1.1 JavaScript GUI Lib:Handlebars bundle plugin - 1.1.1 JavaScript GUI Lib:jQuery bundle( jQuery和jQuery UI)插件 - 1.2.1 JavaScript GUI Lib:Moment.js包插件 - 1.1.1 JIRA Integration for B lue Ocean - 1.3.4 JIRA插件 - 2.5作业配置历史插件 - 2.18 jQuery插件 - 1.12.4-0 JSch依赖插件 - 0.1.54.1 JUnit插件 - 1.23 JWT for Blue Ocean - 1.3.4 LDAP插件 - 1.18 Locale插件 - 1.2 Mailer插件 - 1.20管理脚本 - 1.4 MapDB API插件 - 1.0.9.0矩阵授权策略插件 - 2.2 Matrix项目插件 - 1.12 Maven集成插件 - 3.0 Mercurial插件 - 2.2 Metrics磁盘使用插件 - 3.0.0 Metrics插件 - 3.1.2.10监控 - 1.70.0 MSBuild插件 - 1.28 MSTest插件 - 0.23 NAnt插件 - 1.4.3 OWASP依赖检查插件 - 3.0.2 OWASP标记格式化插件 - 1.5 PAM认证插件 - 1.3参数化触发插件 - 2.35.2蓝海个性化 - 1.3.4管道 - 2.5管道图分析插件 - 1.5蓝海管道实施 - 1.3.4蓝海管道SCM API - 1.3.4管道实用步骤 - 1.5.1管道:API - 2.24管道:基本步骤 - 2.6管道:构建步骤 - 2.5.1管道:声明性 - 1.2.5管道:声明性代理API - 1.1.1管道:声明性扩展点API - 1.2.5管道:Groovy - 2.42管道:输入步骤 - 2.8管道:作业 - 2.15管道:里程碑步骤 - 1.3.1管道: Model API - 1.2.5 Pipeline:Multibranch - 2.16 Pipeline:Nodes and Processes - 2.17 Pipeline:REST API Plugin - 2.9 Pipeline:SCM Step - 2.6 Pipeline:Shared Groovy Libraries - 2.9 Pipeline:Stage Step - 2.3 Pipeline:Stage Tags Metadata - 1.2.5管道:Stage View插件--2.9管道:步骤API - 2.14管道:支持API - 2.16普通凭证插件 - 1.4插件使用 - 插件 - 0.3 PostBuildScript插件 - 2.2.1 PowerShell插件 - 1.3提升构建插件 - 2.31 Pub- Sub“light”Bus - 1.12 Quality Gates Plugin - 2.5 Rebuilder - 1.27 Resource Disposer Plugin - 0.8 REST API for Blue Ocean - 1.3.4 REST实施蓝海 - 1.3.4基于角色的授权策略 - 2.6.1运行条件插件 - 1.0 SCM API插件 - 2.2.5脚本安全插件n - 1.36服务器发送事件(SSE)网关插件 - 1.15简单主题插件 - 0.3 SonarsQube扫描仪用于Jenkins - 2.6.1 SSH凭证插件 - 1.13静态分析实用程序 - 1.93 Structs插件 - 1.10 Subversion插件 - 2.9 Team Foundation Server插件-in - 5.126.0 Throttle Concurrent Builds插件 - 2.0.1 Timestamper - 1.8.8令牌宏插件 - 2.3 Variant插件 - 1.1 Web for Blue Ocean - 1.3.4 Windows Slaves插件 - 1.3.1工作区清理插件 - 0.34

performance jenkins
1个回答
0
投票

首先,自己回答这些问题:

  • 是否有其他CPU密集型进程在同一个Jenkins服务器上运行?
  • 高IO也可能导致巨大的CPU负载,磁盘IO如何?
  • 当盒子在RAM和分页上运行不足时,JVM可能会增加CPU负载,从而导致应用程序性能下降。

所以你的故障排除步骤应该是:

  • 你的CPU支持多线程吗?如果它是单线程的并且您启动了多个线程,那么结果可能就是这样。
  • 找出每个进程的平均CPU利用率,是否会占用CPU周期(不应该这样)。
  • 整体RAM使用情况。
  • 磁盘IO性能指标 - 当您不期望它们时,您是否看到IO的峰值?
  • 确定Jenkins发起的子进程 - 查找每个进程的平均资源利用率。这些是否会重载任何资源(CPU,RAM,磁盘IO?)

根据您的发现,您应该相应地调整您的方框和流程。这可能意味着增加资源。

© www.soinside.com 2019 - 2024. All rights reserved.