Linux下CPU使用率过高的排查方法 | 您所在的位置:网站首页 › cpu无故占用高是为什么 › Linux下CPU使用率过高的排查方法 |
在 Linux 系统下,使用 top 命令查看 CPU 使用情况。 %Cpu(s): 0.3 us, 0.1 sy, 0.0 ni, 99.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st 排查用户 CPU 使用率高 用户 CPU 使用率反映了应用程序的繁忙程度,通常与我们自己写的代码息息相关。 操作步骤:1) 通过 top 命令找到 CPU 消耗最多的进程号; 2) 通过 top -Hp 进程号命令找到 CPU 消耗最多的线程号(列名仍然为 PID);3) 通过printf "%x\n" 线程号命令输出该线程号对应的 16 进制数字;
4) PID进程在内核调用情况。 如果是Java应用可通过 jstack 进程号 | grep 16进制线程号 -A 10 命令找到 CPU 消耗最多的线程方法堆栈。 非 Java 应用可使用 perf perf top -p 7574 如果提示perf: command not found,使用yum install perf安装。 perf利用Linux的trace特性,可以用于实时跟踪,统计event计数(perf stat);或者使用采样(perf record),报告(perf report|script|annotate)的使用方式进行诊断。 |
CopyRight 2018-2019 实验室设备网 版权所有 |