ITPub博客

首页 > Linux操作系统 > Linux操作系统 > sar性能监视命令-实时监控CPU

sar性能监视命令-实时监控CPU

原创 Linux操作系统 作者:keeptrying 时间:2014-02-28 10:17:32 0 删除 编辑

sarUNIX系统中比较传统的性能监视工具,也是系统管理员用于监视系统性能的首选工具之一。sarSystem Activity Report的简写,它主要收集、显示和保存系统的活动信息,包括CPU效率、内存使用状况、系统调用的使用、文件的读写情况、进程活动及IPC有关活动等。在这些功能中,sar最常用于监视CPU和内存的使用情况。

一、实时观察和显示以前收集数据

sar命令没有指定采样间隔和采样次数时,将从-f参数指定的文件中读取系统数据,如果也没有使用-f参数,则从当天的数据文件(/var/adm/sa/sadddd是指当天的日子)中读取数据。

-f参数说明:

-f File :从指定文件读取记录,文件名由File参数指定,这个文件是由带-o参数的sar命令创建的。默认文件名是当天的数据文件(/var/adm/sa/sadddd是指当天的日子)。

-o参数说明:

-o File :将从系统中获取统计信息以二进制格式保存在指定的文件中,由File参数指定文件名。统计信息按记录存放,每一条记录包含着获取的时间。

sar命令有两种获取系统统计数据的方式:一种是实时地观察系统活动的数据,另一种显示以前收集的系统数据。当在使用sar命令时指定了IntervalNumber参数就会实时地获得系统的统计数据;当没有指定IntervalNumber参数或者指定了-f参数,则显示以前由sadc命令收集的系统统计数据。

sar命令实质上也是调用sadc命令。当运行sar命令时,会在后台运行一个/usr/lib/sa/sadc进程,sar命令将sadc进程收集到的二进制数据转换成文本格式,然后显示出来,或者直接将sadc进程产生的二进制数据保存到某一个文件中。

本文只介绍实时监视。

二、分析CPU的活动

CPU的活动状态主要体现在忙与闲上,即在任意时刻它只能是空闲和繁忙中的两种状态之一。当CPU忙时,它可以是处在用户模式下,执行用户的应用程序,也可以是处在系统模式下,执行系统内核程序。当CPU空闲时,有可能是正在等待I/O操作,有可能处于纯粹的空闲状态(没有I/O操作请求)。

示例:

每隔2秒采集一次CPU活动的数据,总共采集10次。

# sar 2 10

AIX servera 3 4 000922044C00 07/17/02

11:06:21   %usr   %sys   %wio   %idle

11:06:23     21     2        0       76

11:06:25     17     1        0       82

11:06:27     13     1        0       86

11:06:29     12     0        0       88

11:06:31      0     0        0       100

11:06:33     11     0        0       89

11:06:35     13     0        0       89

11:06:37     14     1        0       85

11:06:39     13     1        0       86

11:06:41     13     0        0       86

Average      13     1        0       86

sar命令执行结果的第一列是采集数据的时刻,其余各列是一些系统指标。

l   %usr表示CPU处在用户模式下的时间,即CPU花在用户应用程序上的时间百分比。

l   %sys表示CPU处于系统模式下的时间,即CPU花在内核程序上的时间百分比。

l   %wio表示CPU为等待磁盘I/O完成而空闲的时间百分比。

l   %idle表示CPU纯粹地处于空闲状态的百分比,即也没有磁盘I/O请求。

sar命令显示的CPU报告中,%usr+%sys+%wio+%idle=100%。一般情况下,%usr%sys对系统的影响并不大,如果当%usr+%sys的值接近100%,则说明CPU的利用已达到极限,就可能要考虑增加CPU的个数。如果%usr明显地大于%sys,则说明用户的应用程序占用CPU时间太多了,可能要考虑优化应用程序,或者增加CPU的个数。

平时应保持%wio值不能太高。如果%wio值过高(若超过75%),则CPU花在等待磁盘I/O上的时间太多,CPU的运行可能会在等待磁盘I/O上被阻塞,因而磁盘I/O成为系统性能的瓶颈。磁盘I/O可能是由数据库的读写操作或由文件访问引起的。如果没有足够的内存会引起页面调度过分频繁,这样也会产生大量的磁盘I/O。对于数据库读写操作,就需要优化数据在磁盘上的分布,尽可能地使用数据读操作达到并发,也可以采用条带化逻辑卷的分布策略;对于页面调度频繁,就需要建立多个页面空间,并将其分布在不同的物理磁盘上。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25744374/viewspace-1096859/,如需转载,请注明出处,否则将追究法律责任。

上一篇: Statspack报告说明
下一篇: dmidecode命令详解
请登录后发表评论 登录
全部评论

注册时间:2011-04-25

  • 博文量
    130
  • 访问量
    938677