文章最后有每日干货分享偶,记得查收!
问题描述:假如生产环境出现CPU占用过高,请谈谈你的分析思路和定位?
解决方案:结合Linux和JDK命令一块分析
- 先用top命令找出CPU占比最高的线程。
- ps -ef或者jps进一步定位,得知是一个怎么样的一个后台程序。
- 定位到具体线程或者代码。
- 将需要的线程ID转换为16进制格式(英文小写格式)。
- jstack 进程ID | grep tid(16进制线程ID小写英文) -A60。
案例图示详解:
- printf "%x\n" 有问题的线程ID
- jstack 进程ID | grep tid(16进制线程ID小写英文) -A60
干货分享:分享一本阿里java程序员必看的内功神书:《深入Java虚拟机》关注留言直接获取网盘提取码。