单进程cpu高处理
问题描述
Java程序在运行过程中可能出现异常错误或死循环,导致这个进程占用cpu很高的情况出现以及服务器负载很高
问题处理步骤
1:根据top命令,查看占用CPU很高的进程PID,如31754
2: ps -mp 31754 -o THREAD,tid,time | sort -rn,查看该进程所对应线程列表,并按照CPU占用高的线程排序,结果如下:
3: 将需要的线程ID转换为16进制格式:
4: jstack 31754|grep 7c3d -A 30最后打印线程的堆栈信息:将输出的信息进行确认,并处理