JVM分析CPU性能消耗

分三步走,看下JVM中的线程占用的CPU资源,以及定位这些线程为什么如此消耗资源

I. 分析三板斧

1. 获取JVM进程号

使用top方式查看进程号

1
2
top
// 按c显示详情

使用jps方式查看

1
jsp -l

2. 查看进程中不同线程对CPU的资源消耗

1
top -Hp 进程号

show

获取其中占用CPU资源较多的几个线程PID, 转16进制,可以使用shell命令如

1
printf "%x\n" 4485

3. jstack分析线程

1
jstack 进程号 1> xxx.tmp

进入tmp文件,然后根据前面计算的十六进制,定位到具体的线程

II. 其他

0. 参考

1. 一灰灰Bloghttps://liuyueyi.github.io/hexblog

一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛

2. 声明

尽信书则不如,已上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激

3. 扫描关注

QrCode