01-05 Linux常用命令-性能统计

CPU 相关

w:查看当前系统的负载

[root@xiaojw ~]# w
 14:02:34 up 272 days, 17:33,  1 user,  load average: 0.00, 0.03, 0.01
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    183.237.175.89   14:02    2.00s  0.26s  0.00s w

# 14:02:34 up 272 days, 17:33,  1 user,  load average: 0.00, 0.03, 0.01
# 时间         系统运行时间       登录用户数  平均负载(重要!):1分钟内,5分钟内,15分钟内
# 平均负载,值越大,说明服务器压力越大;这个值只要不超过服务器的CPU数量即可

cat /proc/cupinfo:查看 CPU 相关的基本信息

[root@localhost ~]# cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 158
model name      : Intel(R) Core(TM) i5-9400 CPU @ 2.90GHz
stepping        : 13
cpu MHz         : 2904.002
cache size      : 9216 KB
physical id     : 0
siblings        : 1
core id         : 0
cpu cores       : 1
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 22
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc eagerfpu pni pclmulqdq monitor ssse3 cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase avx2 invpcid rdseed clflushopt flush_l1d
bogomips        : 5808.00
clflush size    : 64
cache_alignment : 64
address sizes   : 39 bits physical, 48 bits virtual
power management:

top:显示进程所占的系统资源

top - 07:49:20 up 5 min,  1 user,  load average: 0.00, 0.01, 0.01
                                 # 系统负载
Tasks:  93 total,   1 running,  92 sleeping,   0 stopped,   0 zombie
# 进程数
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
# CPU 使用情况
KiB Mem :  2914272 total,  2560228 free,   222864 used,   131180 buff/cache
# 内存使用情况
KiB Swap:  3145724 total,  3145724 free,        0 used.  2542568 avail Mem
# 交换分区使用情况

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
    1 root      20   0  128012   6596   4140 S  0.0  0.2   0:00.86 systemd
    2 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd
    4 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H
    5 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kworker/u2:0
    6 root      20   0       0      0      0 S  0.0  0.0   0:00.02 ksoftirqd/0
    7 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 migration/0
    8 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh
    9 root      20   0       0      0      0 S  0.0  0.0   0:00.25 rcu_sched
   10 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 lru-add-drain
   11 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 watchdog/0
   13 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kdevtmpfs
   14 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 netns
   15 root      20   0       0      0      0 S  0.0  0.0   0:00.00 khungtaskd
   16 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 writeback
   17 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kintegrityd
   18 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 bioset
   19 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 bioset

# 按 shift + m:按照内存使用大小排序
# 按 1:列出所有核CPU的使用状态
# 按 q:退出

测试系统负载,参考命令:

{ yes > /dev/null & } && sleep 30 && ps -ef | grep yes | awk '{print $2}' | xargs kill
for i in $( seq 0 $(($(cat /proc/cpuinfo | grep processor | wc -l)-1)) );do taskset -c $i yes > /dev/null & done && sleep 30 && ps -ef | grep yes | awk '{print $2}' | xargs kill

常用方式:

  • top -p 进程号:只观察一个进程的状态
$ top -p 732

top - 22:35:00 up 42 days, 11:16, 28 users,  load average: 0.00, 0.01, 0.05
Tasks:   0 total,   0 running,   0 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.2 us,  0.5 sy,  0.0 ni, 99.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  3881920 total,   702676 free,   302076 used,  2877168 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  1184568 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
  • top -p 进程号 -d 间隔时间 -n 刷新次数
  • 其他:

  • -b:批处理模式
  • top -bn1:非动态打印系统资源的使用情况

关于内存

free:查看内存使用状况

[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
           # 内存总大小   实际使用内存大小 空闲内存大小 共享内存  缓冲/缓存      可使用内存
Mem:           2845         211        2506           8         127        2488
Swap:          3071           0        3071

[root@localhost ~]# free -h  # 更便于阅读
              total        used        free      shared  buff/cache   available
Mem:           2.8G        211M        2.4G        8.5M        127M        2.4G
Swap:          3.0G          0B        3.0G

关于 IO

iostat(需要安装:yum install sysstat

  • -c:只看 CPU
  • -d:只看硬盘
[root@localhost ~]# iostat 1  # 1秒刷新一次
Linux 3.10.0-1160.el7.x86_64 (localhost.localdomain)    2020年12月10日  _x86_64_        (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.26    0.00    0.32    0.05    0.00   99.36

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               5.06       181.55        18.64     244793      25135
dm-0              3.43       157.87        17.12     212867      23087
dm-1              0.07         1.63         0.00       2204          0

iftop:类似于top的实时流量监控工具(需要安装才能使用)

你可能感兴趣的:(测试linux)