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
最终找到问题 我进行了回复
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!