前言:昨天下午3点半左右突然收到Zabbix监控报警,某服务器CPU占用到了100%满负荷状态,话不多说赶紧登上服务器一看究竟,这里记录下解决步骤:
一、用top命令进行查看(大写P或小写m都可以),确定是哪个java程序占用CPU高,找到其对应的pid。
昨天忘记了top截图,很尴尬,但是记得其pid为11101。
查询昨天zabbix历史记录,这里附上一张zabbix监控CPU截图,可见满载:
二、查看此Java进程中各线程CPU占比。
pid为11101,使用命令“top -p 11101 -H”查看应用线程使用情况。
补充命令:
ps -mp 11101 -o THREAD,tid,time | uniq -c | sort -nr
此命令可以直接查看线程的TID,且去重排序。