Heng30的博客
搜索 分类 关于 订阅

CPU性能瓶颈分析

2025-02-23

人在家中睡,锅从手机来。某天深夜接到几十条夺命短信,床头的手机不停地振动。你妈的,谁他妈在深夜不停发短息。匆忙拿起床头的手机,刺眼的屏幕亮瞎了程序员的狗眼。一阵恍惚后,定眼一看,坏事了。你妈的,服务器的CPU打满了,不会是中木马了吧。明天早会主管肯定一顿吊。去他妈的,赶紧重启服务器,观察了15分钟没有异常继续睡觉。有事明天再说。过了2小时,手机又开始发癫了。直接开飞行模式,睡觉要紧。

早上回到公司,看见前台的小美,心情好了一点。打声招呼后上楼,看到一脸便秘的主管。今天看要遭殃了,果不其然,上来就是问候祖宗,祖坟要冒烟了。组里的大佬姗姗来迟,战火转移到大佬。大佬三两句打发了主管,回到工位,连入服务器后台。一顿眼花缭乱的操作后,发现服务器中木马了,植入了挖矿程序,在挖莱特比,去你妈的莱特比

事后问大佬,你是如何分析的?大佬神秘一笑,甩给我一张图。按图索骥,找到对应工具,不懂就使用man命令查看对应命令用法。大佬牛逼,请收小弟为徒。

CPU性能瓶颈分析
top - 11:47:33 up 4 days,  1:55,  7 users,  load average: 0.18, 0.07, 0.09
Tasks: 450 total,   1 running, 449 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni, 99.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   3914.0 total,    277.1 free,   2261.1 used,   1738.0 buff/cache
MiB Swap:   3914.0 total,   3913.5 free,      0.5 used.   1652.9 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
  69146 blue      20   0   23184   5888   3712 R   0.4   0.1   0:00.10 top
   1583 root      20   0  335108  18080   7296 S   0.2   0.5   0:38.89 upowerd
  38269 gdm       20   0 5179284 233356 126464 S   0.2   5.8   1:58.34 gnome-shell
  50982 gdm       20   0 5253208 233484 126940 S   0.2   5.8   1:15.60 gnome-shell
  67095 root      20   0       0      0      0 I   0.2   0.0   0:00.28 kworker/5:0-events
...
  • 每2秒展示一次,一共展示5条CPU记录:pidstat 2 5
Average:      UID       PID    %usr %system  %guest   %wait    %CPU   CPU  Command
Average:        0       420    0.00    0.05    0.00    0.00    0.05     -  systemd-udevd
Average:     1000     25619    0.05    0.00    0.00    0.00    0.05     -  gnome-shell
Average:     1000     25741    0.05    0.00    0.00    0.00    0.05     -  gsd-media-keys
Average:      120     33700    0.05    0.00    0.00    0.00    0.05     -  gnome-shell

...

Average:      UID       PID    %usr %system  %guest   %wait    %CPU   CPU  Command
Average:     1000     36010    0.00    0.05    0.00    0.00    0.05     -  sshd
Average:      120     38269    0.05    0.00    0.00    0.00    0.05     -  gnome-shell
Average:      120     50982    0.05    0.00    0.00    0.00    0.05     -  gnome-shell
Average:      120     59213    0.05    0.00    0.00    0.00    0.05     -  gnome-shell
  • 每2秒展示一次,一共展示5条IO记录:vmstat 2 5
procs -----------memory---------- ---swap-- -----io---- -system-- -------cpu-------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st gu
 2  1    524 292028 111128 1667892    0    0    10    12  249    0  0  0 100  0  0  0
 3  0    524 292028 111160 1667900    0    0     0    88 1672  258  0  0 100  0  0  0
10  0    524 292028 111160 1667900    0    0     0     0  222   33  0  0 100  0  0  0
 4  0    524 299264 111168 1667900    0    0     0    34  561   77  0  0 100  0  0  0
 2  0    524 299264 111168 1667900    0    0     0     0  286   43  0  0 100  0  0  0

通过上面的CPU性能瓶颈分析工具图,你能很快找到对应工具。熟练使用上面的工具,小白也能变大神。