zoukankan      html  css  js  c++  java
  • 常用系统性能分析工具

    Linux sar命令:

    sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等。

    [root ~]$ sar --help
    用法: sar [ 选项 ] [ <时间间隔> [ <次数> ] ]
    Options are:
    [ -A ] [ -b ] [ -B ] [ -C ] [ -d ] [ -h ] [ -m ] [ -p ] [ -q ] [ -r ] [ -R ]
    [ -S ] [ -t ] [ -u [ ALL ] ] [ -v ] [ -V ] [ -w ] [ -W ] [ -y ]
    [ -I { <int> [,...] | SUM | ALL | XALL } ] [ -P { <cpu> [,...] | ALL } ]
    [ -j { ID | LABEL | PATH | UUID | ... } ] [ -n { <keyword> [,...] | ALL } ]
    [ -o [ <filename> ] | -f [ <filename> ] ] [ --legacy ]
    [ -i <interval> ] [ -s [ <hh:mm:ss> ] ] [ -e [ <hh:mm:ss> ] ]

    options 为命令行选项,sar命令常用选项如下:

    -A:所有报告的总和

    -u:输出CPU使用情况的统计信息

    -v:输出inode、文件和其他内核表的统计信息

    -d:输出每一个块设备的活动信息

    -r:输出内存和交换空间的统计信息

    -b:显示I/O和传送速率的统计信息

    -a:文件读写情况

    -c:输出进程统计信息,每秒创建的进程数

    -R:输出内存页面的统计信息

    -y:终端设备活动情况

    -w:输出系统交换活动信息

    1. CPU资源监控

    例如,每10秒采样一次,连续采样3次,观察CPU 的使用情况:

    sar -u  10 3

    [root ~]$ sar -u  10 3
    Linux 2.6.32-431.20.5.el6.x86_64 (localhost.localdomain)        2014年12月09日  _x86_64_        (1 CPU)
    
    17时12分09秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
    17时12分19秒     all      0.00      0.00      0.20      0.00      0.00     99.80
    17时12分29秒     all      0.00      0.00      0.10      0.00      0.00     99.90
    17时12分39秒     all      0.00      0.00      0.10      0.00      0.00     99.90
    平均时间:        all      0.00      0.00      0.13      0.00      0.00     99.87

    1.  若%iowait的值过高,表示硬盘存在I/O瓶颈

         2. 若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量

         3. 若 %idle 的值持续低于1,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU 。

    2、I/O和传送速率监控

    例如,每10秒采样一次,连续采样3次,报告缓冲区的使用情况,需键入如下命令:

          sar -b 10 3

    [root ~]$ sar -b 10 3
    Linux 2.6.32-431.20.5.el6.x86_64 (localhost.localdomain)        2014年12月09日  _x86_64_        (1 CPU)
    
    17时16分11秒       tps      rtps      wtps   bread/s   bwrtn/s
    17时16分21秒      0.00      0.00      0.00      0.00      0.00
    17时16分31秒      0.00      0.00      0.00      0.00      0.00
    17时16分41秒      1.80      0.00      1.80      0.00     15.23
    平均时间:         0.60      0.00      0.60      0.00      5.08

         tps:每秒钟物理设备的 I/O 传输总量

         rtps:每秒钟从物理设备读入的数据总量

         wtps:每秒钟向物理设备写入的数据总量

         bread/s:每秒钟从物理设备读入的数据量,单位为 块/s

         bwrtn/s:每秒钟向物理设备写入的数据量,单位为 块/s

    3、进程队列长度和平均负载状态监控

    例如,每10秒采样一次,连续采样3次,监控进程队列长度和平均负载状态:

        sar -q 10 3

    [root ~]$ sar -q 10 3
    Linux 2.6.32-431.20.5.el6.x86_64 (localhost.localdomain)        2014年12月09日  _x86_64_        (1 CPU)
    
    17时20分14秒   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
    17时20分24秒         0       173      0.00      0.00      0.00
    17时20分34秒         0       173      0.00      0.00      0.00
    17时20分44秒         0       173      0.00      0.00      0.00
    平均时间:            0       173      0.00      0.00      0.00

    输出项说明:

         runq-sz:运行队列的长度(等待运行的进程数)

         plist-sz:进程列表中进程(processes)和线程(threads)的数量

         ldavg-1:最后1分钟的系统平均负载(System load average)

         ldavg-5:过去5分钟的系统平均负载

         ldavg-15:过去15分钟的系统平均负载

    未完待续

  • 相关阅读:
    python 查询文件存放地址
    类数组对象:arguments
    前端开发工程师从入门到精通学习过程及资源总结(持续更新中)
    CSS3的圆角border-radius属性
    内联元素inline-block空隙问题
    js中typeof用法详细介绍
    正则表达式
    sublime text 3 快捷键大全以及配置编译环境
    c# 泛型类
    c# 中config.exe 引发的一些问题
  • 原文地址:https://www.cnblogs.com/xuanzhi201111/p/4164338.html
Copyright © 2011-2022 走看看