「LINUX-PERFORMANCE-TUNING」- 网络高带宽

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