解决过程
1、根据top命令,发现PID为11923的Java进程占用CPU高达700%,出现故障。
2、找到该进程后,如何定位具体线程或代码呢,首先显示线程列表,并按照CPU占用高的线程排序:
ps -mp 11923 -o THREAD,tid,time | sort -rn
这里查到TID
3、将需要的线程TID转换为16进制格式
printf "%x " 23418
4、最后使用jstack命令打印出该进程下面的此线程的堆栈信息:
jstack 11923 |grep '5f69' -A 300
上次忘记配图,又补了一次排查实战:
定位AbstractLocalCache类128行问题
参考:https://www.jb51.net/article/165428.htm
记下来自己方便查找使用