本文介绍如何通过CPU&内存诊断定位引起JVM进程CPU使用率过高的关键代码。

问题现象

Java程序CPU使用率为200%。场景一问题现象

解决方案

  1. 登录ARMS控制台,在左侧导航栏选择应用监控 > 应用列表
  2. 应用列表页面顶部选择目标地域,然后单击目标应用名称。
  3. 在左侧导航栏中单击CPU&内存诊断
  4. CPU&内存诊断页面通过聚合分析定位CPU消耗较大的线程。
    定位线程
  5. 定位关键代码并完成优化。
    优化代码1

    上图显示为2个消耗CPU的线程对应的代码。

    优化代码2

    上图代码实际运行时占用CPU过大。