Java性能问题定位---CPU过高

Java性能问题中常见问题CPU过高通常是由于代码中出现密集型应用计算或死循环等。

1、首先我们要找到CPU占用率高的线程,可以使用top命令查找到CPU占用高的进程

2.通过ps aux | grep PID命令获取线程信息,并找到占用CPU高的线程

ps -mp pid -o THREAD,tid,time | sort -rn

3.将需要的线程ID转换为16进制格式

printf "%x\n" tid

4.使用jstack打印出线程信息,可以直观的看到是什么业务线程引起的问题,然后在才从代码角度去分析,一般很容易找到问题所在。

jstack pid |grep tid -A 30

(0)

相关推荐