我们发现笔记本风扇转速较高;
=> 通过资源监视器,我们发现 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