• 1分钟内检查Linux服务器性能的命令


    1、uptime

    在Linux系统中,这些数据表示等待CPU资源的进程和阻塞在不可中断IO进程(进程状态为D)的数量。

    2、dmesg|tail

    命令会输出系统日志的最后10行,这些日志都可以排查性能问题。

    3、vmstat 1

    输出的日志中

    r:等待在CPU资源的进程数。这个数据比平均负载更加能够体现CPU负载情况,数据中不包含等待IO的进程。id,wa,

    free:系统可用内存数(以千字节为单位),如果剩余内存不足,也会导致系统性能问题。

    si,so:交换区写入和读取的数量。如果这个数据不为0,说明系统已经在使用交换区(swap),机器物理内存已经不足。

    us,sy,id,wa,st:这些都代表了CPU时间的消耗,它们分别表示用户时间,系统时间,空闲时间、IO等待时间和被偷走的时间。

    4、mpstat -P ALL 1

    该命令可以显示每个CPU的占用情况,如果有一个CPU占用率特别高,那么有可能是一个单线程应用程序引起的。

    5、pidstat 1

    pidstat命令输出进程的CPU占用率,该命令会持续输出,并不会覆盖之前的数据,可方便观察系统动态。

    6、iostat -xz 1

    iostat命令主要用于看机器磁盘IO情况。该命令输出的列,主要含义:

    r/s,w/s.rkB/s,wkB/s:分别表示每秒读写次数和每秒读写数据量(千字节)。读写量过大,可能会引起性能问题。

    await:IO操作的平均等待时间,单位是毫秒。这是应用程序在和磁盘交互时,需要消耗的时间,包括IO等待和实际操作的耗时。如果这个数值过大,可能是硬件设备遇到了瓶颈或者是故障。

    7、free -m

    此命令可以查看系统内存的使用情况,-m参数表示按照兆字节展示。最后两列分别表示用于IO缓存的内存数,和用于文件系统页缓存的内存数,和用于文件系统页缓存的内存数。

    8、sar -n DEV 1

    sar命令在这里可以查看网络设备的吞吐量。在排查性能问题时,可以通过网络设备的吞吐量,判断网络设备是否已经饱和。

    9、sar -n TCP,ETCP 1

    sar命令在这里用于查看TCP连接状态,其中包括:

    active/s:每秒本地发起的TCP连接数,既通过connect调用创建的TCP连接.

    passive/s:每秒远程发起的TCP连接数,即通过accept调用创建的TCP连接。

    retrans/s:每秒TCP重传数量。

    10、top

    该命令包含了前面好几个命令的检查命令(现场我也喜欢用这个命令查看内存是否占用满了) 比如 系统的负载情况(uptime)、系统内存使用情况(free)、系统CPU使用情况(vmstat)等。因此通过这个命令,可以相对全面的查看系统负载的来源。

  • 相关阅读:
    H
    饭卡(0 1背包)
    J
    H
    E
    3991: [SDOI2015]寻宝游戏
    CF 1051 F. The Shortest Statement
    CF 643 E. Bear and Destroying Subtrees
    4567: [Scoi2016]背单词
    4946: [Noi2017]蔬菜
  • 原文地址:https://www.cnblogs.com/yangsy0915/p/5176927.html
Copyright © 2020-2023  润新知