JVM的CPU资源占用过高问题的排查过程是怎么样的

技术JVM的CPU资源占用过高问题的排查过程是怎么样的今天就跟大家聊聊有关JVM的CPU资源占用过高问题的排查过程是怎么样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有

今天跟大家聊聊JVM CPU资源过多的故障排除过程,可能很多人都不太了解。为了让你更好地理解,边肖为你总结了以下内容,希望你能从这篇文章中有所收获。

早上一个在线应用中的一个JVM的CPU比例突然飙升到192%,一直没有降下来,导致监控一直报警。我很久没有处理这个问题了。现在我将总结并记录故障排除步骤。(以下图片并非网上问题截图,涉及公司业务。)

1.通过top命令检查当前机器的CPU使用情况。

JVM的CPU资源占用过高问题的排查过程是怎么样的

这时候发现,如果Java的进程占用太多,又不能一直下来,那就要检查是什么线程造成的高比例。以图中流程为例。如果发现PID为31357的Java进程的CPU比率总是很高,记录下它的PID。

2.检查Java进程中的线程占用情况。

顶部-H -p31357

说明:-H表示显示线程,-p表示指定进程。

JVM的CPU资源占用过高问题的排查过程是怎么样的

可以看到CPU占用了大量的线程,记下它们的PID。假设31357的CPU始终是50%。

3.通过jstack命令获取资源占用异常的线程栈,可以临时保存在文件中查看。

jstack 31357 jstack.31357.log

JVM的CPU资源占用过高问题的排查过程是怎么样的

您可以看到上面指定线程的堆栈信息。

如果想查看线程中锁的其他信息,可以添加一个-l参数。

JVM的CPU资源占用过高问题的排查过程是怎么样的

4.上述方法用于工艺正常时的堆栈打印。今天,jstack -l命令没有响应。估计是CPU一直站着,无法执行正常命令。根据提示【目标进程不响应时可以使用-f选项】,只能放大。

jstack-F“PID”jstack。“PID”。文本文件(textfile)

吐槽的实际日志结果如下:

JVM的CPU资源占用过高问题的排查过程是怎么样的

发现很多线程被阻塞,有用的结果在这里:

JVM的CPU资源占用过高问题的排查过程是怎么样的

显然,线程19576一直在运行,一直在执行EXCEL导出的相关方法。这就是问题所在。接下来的任务是检查这个地方的代码逻辑。

Jstack命令格式:

jstack [选项] pid

参数:

-f jstack [-l]在PID无法响应时强制打印堆栈。

-长长的名单。打印关于锁的附加信息,例如属于java.util.concurrent的可拥有的同步器列表.

-m混合模式输出(包括java和本地c/c片段)堆栈。

java应用程序的进程号。

记得没错的话这几个参数是互斥的,不能联合使用。

5.搜索数据后发现,用jps命令检查java进程的pid更实用:

JVM的CPU资源占用过高问题的排查过程是怎么样的

命令格式

jps [选项] [ hostid ]

参数描述

-m输出传递给main方法的参数,如果是嵌入式JVM,输出为null。

-l输出应用主类的完整包名或应用JAR文件的完整路径。

-v输出传递给JVM的参数。

这三个参数一起显示了更详细的信息:

JVM的CPU资源占用过高问题的排查过程是怎么样的

发现JMX的远程端口是在这些Java进程的启动参数中打开的。正常情况下,通过jconsole远程连接可以看到JVM的日常参数。例如,本地访问上图中的pay.war流程:

JVM的CPU资源占用过高问题的排查过程是怎么样的

JVM的CPU资源占用过高问题的排查过程是怎么样的

JVM的CPU资源占用过高问题的排查过程是怎么样的

看完以上,你对JVM的CPU资源占用问题的故障排除过程有进一步的了解吗?如果您想了解更多知识或相关内容,请关注行业资讯频道,感谢您的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/44218.html

(0)

相关推荐

  • 怎样进行MS SQL安全身份设置

    技术怎样进行MS SQL安全身份设置本篇文章为大家展示了怎样进行MS SQL安全身份设置,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。下面的内容涉及到修改NTFS磁盘权限和设置安

    攻略 2021年11月30日
  • 抖音刷赞推广平台便宜,全网最便宜的平台!

    技术抖音刷赞推广平台便宜,全网最便宜的平台!抖音快速涨粉方法抖音无疑是目前新媒体里面涨粉最容易,涨粉最快的平台了。前有成都小甜甜一夜涨粉500万,后有灵魂当铺一天涨粉75万。这种涨粉速度在其他平台是想都不敢想象的。不过,

    测评 2021年11月9日
  • 早餐的重要性,每天吃早餐对健康有什么意义

    技术早餐的重要性,每天吃早餐对健康有什么意义谢邀请早餐的重要性!吃早餐对人的健康是非常重要的。早餐不仅要吃,而且还要吃的好,吃的有营养。人经过晚饭后十几个小时的能量消耗,所剩的热能几乎没有了,若早饭不能及时补充,会直接影

    生活 2021年10月22日
  • 新加坡云服务器值得租用吗

    技术新加坡云服务器值得租用吗新加坡云服务器提供了一个虚拟和独立的环境来托管您的企业网站。它可以将您的网络业务的文件和数据存储在链接到物理机器或服务器的虚拟环境中。这实际上是通过虚拟化软件完成的。通过虚拟化技术,物理服务器

    礼包 2021年12月8日
  • 抖音刷粉丝网站,抖音自助下单平台业务秒刷网?

    技术抖音刷粉丝网站,抖音自助下单平台业务秒刷网?为什么你认为很好的作品却没有播放量?点赞评论也很少?那是因为你的账号还没有打标签,你是做美食的作品却推荐给了,喜欢做宠物的人点赞量王博率当然杀不来,如何快速给账号打标签?这

    测评 2021年10月19日
  • CSS中上下margin的传递和折叠

    技术CSS中上下margin的传递和折叠 CSS中上下margin的传递和折叠CSS中上下margin的传递和折叠
    1.上下margin传递
    1.1.margin-top传递为什么会产生上边距传递
    块级

    礼包 2021年12月23日