龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 操作系统 > LINUX系统 >

Linux 性能监控分析(4)

时间:2014-06-22 03:05来源:网络整理 作者:网络 点击:
分享到:
(3).run queue(r)刚好在4个。 $ vmstat 1 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st 14 0 140

(3).      run queue(r)刚好在4个。

$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
14  0    140 2904316 341912 3952308  0    0     0   460 1106 9593 36 64  1  0  0
17  0    140 2903492 341912 3951780  0    0     0     0 1037 9614 35 65  1  0  0
20  0    140 2902016 341912 3952000  0    0     0     0 1046 9739 35 64  1  0  0
17  0    140 2903904 341912 3951888  0    0     0    76 1044 9879 37 63  0  0  0
16  0    140 2904580 341912 3952108  0    0     0     0 1055 9808 34 65  1  0  0

从上面的数据可以看出几点:

(1).      context switch(cs)比 interrupts(in)要高得多,说明内核不得不来回切换进程;

(2).      进一步观察发现 system time(sy)很高而 user time(us)很低,而且加上高频度的上下文切换(cs),说明正在运行的应用程序调用了大量的系统调用(system call);

(3).      run queue(r)在14个线程以上,按照这个测试机器的硬件配置(四核),应该保持在12个以内。

我上午CPU 100%时的信息:

top - 11:49:08 up 50 days, 22:25,  6 users,  load average: 59.79, 59.98, 60.50

Tasks: 200 total,  61 running, 139 sleeping,   0 stopped,   0 zombie

Cpu0  : 26.5%us, 73.5%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Cpu1  : 25.0%us, 75.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:   1939780k total,  1744412k used,   195368k free,    95704k buffers

Swap:  4401800k total,   662836k used,  3738964k free,   811124k cached

[root@localhost ~]# vmstat 2 10

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st

58  1 662836 195988  95428 810740    0    0     4   106    4    1 23  4 72  1  0

59  1 662836 195988  95448 810732    0    0     0   128  235  221 28 72  0  0  0

59  1 662836 195988  95448 810768    0    0     0     0  216  209 28 72  0  0  0

2.3  mpstat

       mpstat 和 vmstat 类似,不同的是 mpstat 可以输出多个处理器的数据。

注意:需要安装sysstat 包后才有这个命令,可以使用yum安装:

       #yum install sysstat

       sysstat 包含iostat、mpstat、sar、命令。

[root@localhost gmail]# export LANG=en_US
[root@localhost gmail]# mpstat -P ALL    
Linux 2.6.18-8.el5xen (localhost.localdomain)   02/21/2011
 
10:20:16 PM  CPU   %user   %nice    %sys %iowait    %irq   %soft  %steal   %idle    intr/s
10:20:16 PM  all   11.49    0.00    2.58    1.04    0.01    0.13    0.01   84.74    314.61
10:20:16 PM    0   15.73    0.00    2.56    0.55    0.02    0.23    0.01   80.89    241.09
10:20:16 PM    1    7.25    0.00    2.60    1.53    0.00    0.02    0.01   88.59     73.52
[root@localhost gmail]# mpstat -P ALL 1
Linux 2.6.18-8.el5xen (localhost.localdomain)   02/21/2011
 
10:20:18 PM  CPU   %user   %nice    %sys %iowait    %irq   %soft  %steal   %idle    intr/s
10:20:19 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00    136.63
10:20:19 PM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00     86.14
10:20:19 PM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00     50.50
 
10:20:19 PM  CPU   %user   %nice    %sys %iowait    %irq   %soft  %steal   %idle    intr/s
10:20:20 PM  all    0.00    0.00    0.00    0.47    0.00    0.00    0.00   99.53    105.00
10:20:20 PM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00     79.00
10:20:20 PM    1    0.00    0.00    0.00    0.90    0.00    0.00    0.00   99.10     26.00
 

2.4  ps

精彩图集

赞助商链接