ps -ef|grep 1085
首先确定是哪个服务出了问题,因为一个服务器可能部署了多个服务,如果不是你负责的服务,及时联系相关负责人,确定问题
如果是你负责的服务,那么继续
top
查看服务pid
查看线程占用
top -Hp 17038
# 将线程号转为16进制;其中17045为线程号 printf '%x\n' 17045 # 17038为进程号,0x4295为最耗CPU线程的十六进制 jstack 17038 | grep '0x4295' -C10 --color
补充
执行上面的命令,结果如下,-C为行数,可以加大行数,大致可以看出是mysql,可能是请求数太多
# 其中17038为进程号 jmap -heap 17038
紧急解决方案就是直接重启,未能保留当时的JVM内存文件;在开发环境进行循环压测,复现线上问题,然后导出dump文件进行分析找到原因