表示监控所有 CPU,后面数字 5 表示间隔 5 秒输出数据
mpstat -P ALL 5
间隔 5 秒后输出一组数据,-u 表示 CPU 指标
pidstat -u 5 1
查看上下文次数,5s输出1组数据
pidstat -wt 5 1
查看各种中断类型变化的次数
watch -d cat /proc/interrupts
每秒输出系统参数
vmstat 1
分析cpu使用情况
yum install perf
perf top -g
dstat集成了众多工具特性
yum install dstat
dstat 1 10
追踪发现某个进程中的的某个线程占用较高
top -Hbp PID | awk '/进程名/ && $9>10'
将PID对应占用高的线程ID转为16进制的线程ID
printf '%x\n' 线程ID
输出16进制的线程ID
通过 jvm的 jstack查看进程信息,发现调用的是哪个服务的问题
jstack 进程ID | grep '16进制的线程ID' -A 30
jstack 19 | grep "java.lang.Thread.State:" | cut -d":" -f2- | sort | uniq -c
