前言
线上故障主要会包括 CPU、磁盘、内存以及网络问题,而大多数故障可能会包含不止一个层面的问题,所以进行排查时候尽量四个方面依次排查一遍。
同时例如 jstack、jmap 等工具也是不囿于一个方面的问题的,基本上出问题就是 df、free、top 三连,然后依次 jstack、jmap 伺候,具体问题具体分析即可
CPU
-
查询tomcat的进程id
ps -ef | grep java
-
查询CPU使用率较高的线程id
top -H -p PID
-
将占用最高的pid转为16进制的id
printf '%x\n' PID
-
打印某个线程的堆栈信息
jstack -l <pid> | grep <thread-hex-id> -A 10