JVM实践-记录一次高CPU排查

步骤参考

https://www.cnblogs.com/LQBlog/p/12935404.html

现象

cpu占用100% 前端用户已有感知 超时 等

 

排查 

1、步骤执行top -Hp [pid] 可以看出7 和8 占用高cpu

 

 

 

2、将7 和8转为16进制就是线程id 7和8的16进制就是7和8

liqiangdeMacBook-Pro:~ liqiang$ printf  '%x/n' 7
7/nliqiangdeMacBook-Pro:~ liqiang$ printf  '%x/n' 8
8/nliqiangdeMacBook-Pro:~ liqiang$ 

3.将jvm线程全部dump出来 搜索nid=0x7  或者nid=0x8

jstack 19751  >/root/threaddump.txt// dump整个线程堆栈并输出到指定文件

4.可以看出7和8是gc相关

 

5.频繁GC导致内存泄露?我们可以通过jstat去观察gc频率

参考:https://www.cnblogs.com/LQBlog/p/10691903.html#autoid-0-0-0

 

最终找到问题 我进行了回复  

 

posted @ 2022-07-21 16:38  意犹未尽  阅读(62)  评论(0编辑  收藏  举报