我们发现笔记本风扇转速较高; => 通过资源监视器,我们发现 CPU 较高使用率 => top,我们发现如下两个进程的 CPU 占用较高: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1603 root -51 0 0.0m 0.0m 0.0m S 15.8 0.0 150:17.59 [irq/18-ens32] 606245 root 0 -20 0.0m 0.0m 0.0m I 13.2 0.0 0:30.36 [kworker/u13:2-xprtiod] => iftop,我们发现 Network 占用较高: 172.31.252.20 => 172.31.252.200 5.74Mb 5.49Mb 5.49Mb <= 85.4Mb 81.8Mb 81.8Mb 172.31.252.20 => public2.alidns.com 1.14Kb 1.27Kb 1.27K => nethogs,我们发现是 NFS 的带宽比较高: PID USER PROGRAM DEV SENT RECEIVED ? root 172.31.252.20:957-172.31.252.200:2049 93.216 1328.494 KB/sec => pidstat,查找读取较高的进程: Average: UID PID kB_rd/s kB_wr/s kB_ccwr/s iodelay Command Average: 1000 1894838 10796.67 119.70 0.00 80 python => ps,查找该进程的详细信息: # ps -p 1894838 -o comm,args=ARGS COMMAND ARGS python /home/k4nz/.virtualenvs/zim-desktop-wiki@py3.9/bin/python /srv/http/ORG000-D3RM/TEAM-COMMON/zim-desktop-wiki/zim-desktop-wiki@master/zim.py --debug --geometry 1080x768+0+0 => strace -p,监控应用程序的执行 => lsof -p,查看被频繁读写的文件 => filetop => opensnoop
参考文献
Show Threads Using PS Command in Linux
pread64(2) – Linux man page
Check network usage per process in Linux