你这系统是做什么的,数据量大不大。
排查步骤
1.top:找到占用CPU高的进程PID
2.jstack PID >> java_stack.log:导出CPU占用高进程的线程栈
3.top -Hp PID:找出PID的进程占用CPU过高的线程tid。(或使用命令 ps -mp PID -o THREAD,tid,time | sort -rn | less)
4.printf “%x\n” tid:将需要的线程ID转换为16进制格式。
5.less java_stack.log:查找转换成为16进制的线程TID,找到对应的线程栈,分析并处理问题。
可以参考这篇博客线上Java 高CPU占用、高内存占用排查思路_白夜行-CSDN博客
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
老哥遇到相同问题了 你是怎么解决的