服务器性能测试实时监控Linux命令

实时监控

  • top

    • -h : 查看帮助
    • -p : 监控指定进程,当监控多个进程时,进程ID以逗号隔开,这个选项只能在命令行下使用
    • top 任务区命令
      • M: 按内存使用率排序(大写)
      • P:按CPU使用率排序(大写)
      • z :彩色/黑白显示(小写)
  • vmstat

    • 可以监控操作系统的进程状态、内存、虚拟内存、磁盘IO、CPU信息
    • 语法:vmstat [-a] [-n] [-S unit] [delay[count]]
      • -S:使用指定单位显示,参数有k、K、m、M,分别代表1000,1024,1000000,1048576字节(byte)默认单位为K(1024 bytes)
  • 内存

    • free
      • 能够监控系统的内存使用状态,其中,total:总计物理内存的大小,Used:已使用多大;Free:可使用多大;shared:多个进程共享的内存总额;buffers/cached:磁盘缓存大小
      • -h 显示单位
  • CPU

    • mpstat
      • mpstat 最大特点是:可以查看多核cpu中每个计算核心的统计数据
      • mpstat 需注意:当没有参数时,mpstat则显示系统启动后所有信息的平均值,有interval时第一行的信息自系统启动以来的平均信息,从第二行开始,输出为前一个interval时间段的平均值
      • 语法:mpstat [-P{|ALL}] [interval [count]]
        • interval : 相邻的两次采样的间隔时间
        • -P{|ALL}:表示监控哪个CPU,cpu在[0,cup数-1]中取值
          • 如:mpstat -P 1
          • mpstat -P 则显示全部
          • mpstat -P 1 5 :实时监控CPU 1 每5s更新一次
          • mpstat -P 1 5 5 : 实时监控 cpu 1 每5s刷新一次,一共监控5次
          • 显示数据概念,主要关注参数
            • idle(空闲) idle 越低代表,说明CPU使用高,负荷大,运算速度慢
            • usr(用户使用的)
            • sys(系统使用的)
  • 网络

    • netstat
      • 用于显示本机网络链接、运行端口、路由表等信息
      • 参数说明:
        • -n:拒绝显示别名,能显示数字的全部转化成数字
        • -l:仅列出有在Listen(监听)的服务状态
        • -p: 显示建立相关链接的程序名
        • -t:显示tcp相关选项
        • -u:仅显示udp相关选项
        • -c:每隔一个固定时间,执行netstat命令
        • nestat -ntlp:查看运行端口有没有被监听
        • -i:显示自动匹配接口的信息
          • netstat -i 显示数据含义:
            • Iface:网络设备接口名称
            • MTU:最大的传输单元(字节)
            • RX -OK:已经准确无误的接收多少数据包
            • RX-ERR:接收数据包时发生多少错误
            • RX-DRP:接收数据包时丢了多少
            • RX-OVR:接收时由于误差丢失多少数据包
            • TX-OK :已经准确无误的发送多少数据包
            • TX-ERR:发送数据包时发生多少错误
            • TX-DRP:发送数据包时丢了多少
            • TX-OVR:发送时由于误差丢失多少数据包
            • Flg:标记
            • 正常后面的几个都为0,如果不为0说明网络有问题
  • 磁盘

    • iostat
      • iostat是系统磁盘IO操作进行监控,它的输出主要显示磁盘的读写操作的统计信息,同时给出CPU的使用情况
      • 用法 :-x device 输出指定的要统计磁盘设备名称,默认为所有磁盘设备
        • iostat 显示参数信息
          • Devices:设备
          • tps:一次io请求的tps
          • KB_read/s:每秒读的数据大小
          • KB_wrtn/s:每秒写的数据大小
          • KB_read:读的总数
          • KB_wrtn:写的总数
        • iostat -x:
          • %util:一秒钟io是非空的,繁忙程度,越大代表越繁忙(越不好)
          • rkB/s:读取每秒的大小
          • wkB/s:写的每秒大小
  • 万能命令 (sar)

    • 系统活动情况报告,是目前Linux上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告
    • sar 的性能监控范围:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等
    • sar 语法:sar [options] [-A] [-o file] t [n]
      • 语法说明:在命令行中,n和t两个参数组合起来定义采样间隔和次数,t为采样间隔,是必须有的参数,n为采样次数,是可选的,默认值是1,-o file表示将命令结果以二进制格式存放在文件中,file在此处不是关键字,是文件名称,options为命令选项
      • sar 选项:
        • -A:所有报告的总和
        • -u:CPU利用率
        • -v:进程、节点、文件和锁表状态
        • -r:显示系统内存的使用情况
        • -B:内存分页情况
        • -b :缓冲区使用情况
  • Linux 下进程追踪命令

    • strace 简介:strace命令是一个集诊断、调试、统计于一体的工具,我们可以使用strace对应用的系统调用和信号传递的跟踪结果来应用进行分析,以达到解决问题或者是了解应用工作过程的目的
    • strace选项
      • -p:跟踪指定进程
      • -f:跟踪由fork子进程系统调用
      • -c:统计每次系统调用的执行时间、次数和出错次数
      • -t:在输出中的每一行前加上时间信息,-tt时间确定到微秒级
      • -e expr:输出过滤器,通过表达式,可以过滤掉你不想要的输出
      • -o filename:默认strace 将结果输出到stdout ,通过-o可以将输出写入到filename文件中
原文地址:https://www.cnblogs.com/CesareZhang/p/12022345.html