linux性能测试命令 51Testing软件测试网m0~,e/y
Ex,k
一. CPU性能评估
_0]b@+[e3B_XH01.vmstat [-V] [-n]
[depay [count]]51Testing软件测试网
}*E:[b oJ
-V: 打印出版本信息,可选参数51Testing软件测试网o~t(?%\5A
-n: 在周期性循环输出时,头部信息仅显示一次
6HK4e$_)c$E0delay: 两次输出之间的时间间隔
4we&_4u
c k0count: 按照delay指定的时间间隔统计的次数。默认是1
QAD/W;x\b!g0如:vmstat 1 351Testing软件测试网_)O-p3Xm
JwgG
user1@user1-desktop:~$ vmstat 1 3
7_
K&R%zm0procs -----------memory---------- ---swap--
-----io---- -system-- ----cpu----
zM|eVV0r b swpd free buff cache si so bi bo in cs us sy id wa
D'P [NTG(x
?00 0 0 1051676 139504 477028 0 0 46 31 130 493 3 1 95 251Testing软件测试网g&``g;dE
yi#M x`
0 0 0 1051668 139508 477028 0 0 0 4 377 1792 3 1 95 0
UaB|"{i6~2_mkc00 0 0 1051668 139508 477028 0 0 0 0 327 1741 3 1 95 051Testing软件测试网r:Gl4^WI,l3E
r: 运行和等待CPU时间片的进程数(若长期大于CPU的个数,说明CPU不足,需要增加CPU)【注意】
4kPRyW
Ls0b: 在等待资源的进程数(如等待I/O或者内存交换等)
Fc6JFt)aaq9z0swpd: 切换到内存交换区的内存数量,单位kB
d x$Zqe6f3~7|7p0free: 当前空闲物理内存,单位kB51Testing软件测试网3n2` | m-~E9ZNY
buff:buffers cache的内存数量,一般对块设备的读写才需要缓存
"O8{4d%`l;p'F/i0cache:page cached的内存数量,一般作为文件系统cached,频繁访问的文件都会被cached
Ux*f W2L(je3|0si: 由磁盘调入内存,即内存进入内存交换区的数量51Testing软件测试网(d*gdzZ6K
so: 内存调入磁盘,内存交换区进入内存的数量
(I
h#^P[
GN0bi: 从块设备读入数据的总量,即读磁盘,单位kB/s51Testing软件测试网([hK7Xe[8U
bo: 写入到块设备的数据总量,即写磁盘,单位kB/s51Testing软件测试网NV$zeo
in: 某一时间间隔中观测到的每秒设备中断数51Testing软件测试网 ~ a"|/i+i PUp[(|q
cs: 每秒产生的上下文切换次数
Dnu JH2su0us:用户进程消耗的CPU时间百分比【注意】
(g`_0dKT:K;i^0sy: 内核进程消耗CPU时间百分比【注意】
!@C"t3aC3ZEn"\0id:CPU处在空闲状态的时间百分比【注意】
yVCx3s px[0wa:IO等待所占用的CPU时间百分比51Testing软件测试网Vr+OMW"v
r6Vh9iz
如果si、so的值长期不为0,表示系统内从不足,需要增加系统内存51Testing软件测试网X(xF-`b
bi+bo参考值为1000,若超过1000,且wa较大,表示系统IO有问题,应该提高磁盘的读写性能51Testing软件测试网4Hg6c(V+O W @
in与cs越大,内核消耗的CPU时间就越多51Testing软件测试网l}#y*cv7I(V+x|0TV
us+sy参考值为80%,如果大于80%,说明可能存在CPU资源不足的情况
8c'M l3At'] y0综上所述,CPU性能评估中重点注意r、us、sy和id列的值。51Testing软件测试网;RaQ+Lu,l)N:d"T3t
{k^ho5g02. sar [options]
[-o filename] [interval [count] ]51Testing软件测试网N*G~1[8wK
options:
,LX)a C_yNd0-A:显示系统所有资源设备(CPU、内存、磁盘)的运行状态51Testing软件测试网/I!D_$dS
-u: 显示系统所有CPU在采样时间内的负载状态51Testing软件测试网M(e\T0Phcu'|1o
-P: 显示指定CPU的使用情况(CPU计数从0开始)51Testing软件测试网nu$f2W)aQJ\-k
-d: 显示所有硬盘设备在采样时间内的使用状况
zH3w1F c,j(B"\Q0-r: 显示内存在采样时间内的使用状况
3\ N'k'~J3q0-b: 显示缓冲区在采样时间内的使用情况
%K9O9g%G6K1^
Uw0-v: 显示进程、文件、I节点和锁表状态
,Zwg4b{r;m0-n:显示网络运行状态。参数后跟DEV(网络接口)、EDEV(网络错误统计)、SOCK(套接字)、FULL(显示其它3个参数所有)。可单独或一起使用51Testing软件测试网^4j"n$smQ^7E!Z
-q: 显示运行队列的大小,与系统当时的平均负载相同51Testing软件测试网]5Y%p's(i+G
-R: 显示进程在采样时间内的活动情况51Testing软件测试网8b6ey@)^FEq-f-m
-y: 显示终端设备在采样时间内的活动情况51Testing软件测试网:rQf,aLQ
-w: 显示系统交换活动在采样时间内的状态
BUjP!~Lj0-o: 将命令结果以二进制格式存放在指定的文件中51Testing软件测试网0\F5S QY;w
interval: 采样间隔时间,必须有的参数
5`1D1W)I(?3f)]?M,n0count: 采样次数,默认1
8BI#F!R(F.^l7v0如:sar -u 1 3
9m+|N8[q sBa0user1@user1-desktop:~$ sar -u 1 351Testing软件测试网?C(iaa
C.|
Linux 2.6.35-27-generic (user1-desktop) 2011年03月05日_i686_ (2 CPU)
LXkv1@1B;A051Testing软件测试网*Ds.h-?v5^
09时27分18秒CPU %user %nice %system %iowait %steal
%idle51Testing软件测试网B%g!Z
?Hi#l%j
09时27分19秒all 1.99 0.00 0.50 5.97 0.00 91.5451Testing软件测试网Ud E}q8Y?
09时27分20秒all 3.90 0.00 2.93 5.85 0.00 87.3251Testing软件测试网!o,cW pkz'?
af
09时27分21秒all 2.93 0.00 1.46 4.39 0.00 91.2251Testing软件测试网]!|s5A1G&y
平均时间: all 2.95 0.00 1.64 5.40 0.00 90.02
b0ff/c@9D0%user: 用户进程消耗CPU时间百分比51Testing软件测试网a?2i@{,b
%nice: 运行正常进程消耗CPU时间百分比
g.^l$o2n-sqj`0%system: 系统进程消耗CPU时间百分比
@4f$?1us0KD0%iowait:IO等待多占用CPU时间百分比
p mm Y:@D{g'^0%steal: 内存在相对紧张坏经下pagein强制对不同页面进行的steal操作
E*\ gK.@xFaIV0%idle:CPU处在空闲状态的时间百分比
aGW/\L
]W*o03. iostat [-c | -d]
[-k] [-t] [-x [device]] [interval [count]]51Testing软件测试网4z3q;a.`8U
-c:显示CPU使用情况
vY;|$h:u0-d:显示磁盘使用情况
u)]$e*Y]F*[0-k: 每秒以k bytes为单位显示数据51Testing软件测试网t;^Qi5OL ~#i
-t:打印出统计信息开始执行的时间
0W+ph*p~
{0-x device:指定要统计的磁盘设备名称,默认为所有磁盘设备
U0R I0kMXo%D0interval:制定两次统计时间间隔
2d-r:Y?4M0count: 统计次数51Testing软件测试网]Nc8v'O$_RM|
如:iostat -c
!?%EA
?Ph/R7X ~0user1@user1-desktop:~$ iostat -c51Testing软件测试网 S/M]j'j0M?A
Linux 2.6.35-27-generic (user1-desktop) 2011年03月05日_i686_ (2 CPU)
snq(e,RS v7G\051Testing软件测试网r/SN-\
]
avg-cpu: %user %nice %system %iowait %steal %idle51Testing软件测试网'Ha:p*}V0qv ml
2.51 0.02 1.27 1.40 0.00 94.8151Testing软件测试网 c:C7{+z'\ o
(每项代表的含义与sar相同)51Testing软件测试网~f[0L7H5R,qm)CE*]
4. uptime,如:
7`M&vt&M
kL0user1@user1-desktop:~$ uptime51Testing软件测试网G#leN-JW9B#Gx/})?
10:13:30 up 1:15, 2 users, load average: 0.00, 0.07,
0.11
u1i5]\Q;T0显示的分别是:系统当前时间,系统上次开机到现在运行了多长时间,目前登录用户个数,系统在1分钟内、5分钟内、15分钟内的平均负载
|4~tp$G3E#`0注意:load average的三个值一般不能大于系统CPU的个数,否则说明CPU很繁忙
_-M7_$`2DCD{wz0二.内存性能评估51Testing软件测试网,Rz:Ah,_1k
vo
Yc
1. free
Y"|E6m?02. watch与free相结合,在watch后面跟上需要运行的命令,watch就会自动重复去运行这个命令,默认是2秒执行一次,如:
I^J"KquQQI
b0Every 2.0s: free Sat Mar 5 10:30:17 201151Testing软件测试网O
P-|^5vC}
51Testing软件测试网ns;J%?#|0`
total used free shared buffers cached
{8E&h3[^p%kO0Mem: 2060496 1130188 930308 0 261284 483072
)Erp.m'@0-/+ buffers/cache: 385832 167466451Testing软件测试网[Y!h}3tirb,k
Swap: 3000316 0 300031651Testing软件测试网-uBr dX&^W/g1mt
(-n指定重复执行的时间,-d表示高亮显示变动)51Testing软件测试网`4^-LCDO
3.使用vmstat,关注swpd、si和so
ZQjE:MF,J~!T M04. sar-r,如:51Testing软件测试网5r2R$l/I}"G@
user1@user1-desktop:~$ sar -r 2 3
c)[%g,kOH$fw/c*NP$l0Linux 2.6.35-27-generic (user1-desktop) 2011年03月05日_i686_ (2 CPU)51Testing软件测试网5E
e7Y/O1_
G+p
`
51Testing软件测试网\NogL9t8F
10时34分11秒kbmemfree kbmemused %memused kbbuffers
kbcached kbcommit %commit51Testing软件测试网_j
~/`0E'rdVd
10时34分13秒923548 1136948 55.18 265456 487156
1347736 26.6351Testing软件测试网\
WtM}y
10时34分15秒923548 1136948 55.18 265464 487148
1347736 26.6351Testing软件测试网o AMA)L7G9c
10时34分17秒923548 1136948 55.18 265464 487156
1347736 26.6351Testing软件测试网h8f7ez7N/XI*F
平均时间: 923548 1136948 55.18 265461 487153
1347736 26.6351Testing软件测试网D(^i5]$?Vi
kbmemfree: 空闲物理内存
I
G$L&M+M6l
g`^ vb0kbmemused: 已使用物理内存
V7o v'{{Z0%memused: 已使用内存占总内存百分比
iN,`8zW3|0kbbuffers:Buffer Cache大小
V"ke:^4oj$_0kbcached:Page Cache大小51Testing软件测试网N*`-?
wA_ Nn%s"Y:Y
kbcommit: 应用程序当前使用内存大小
5Y*\B(cA0%commit:应用程序使用内存百分比
sq,x-r+m'm4j[A"L0三.磁盘I/O性能评估
-f*RT6i-vk+v!a&ZGef01. sar -d,如:
"k-pr}0cD`"Q8go'pq0user1@user1-desktop:~$ sar -d 1 351Testing软件测试网U*hB|Mf QD
Linux 2.6.35-27-generic (user1-desktop) 2011年03月05日_i686_ (2 CPU)51Testing软件测试网CMU~_NA-lJ2Vi
hW)rMDH*R010时42分27秒DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
PT*PLb QD$k9a010时42分28秒dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
6R^)@7hg}rU0
M'B#J,R#@6G
]Dw010时42分28秒DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util51Testing软件测试网3VI2v1i,gx:O-C
10时42分29秒dev8-0 2.00 0.00 64.00 32.00 0.02 8.00 8.00 1.60
|4_w:P0u+K:g
e051Testing软件测试网6p2Wn9_K lTe:cT
10时42分29秒DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util51Testing软件测试网 o?|,Cu!m~
10时42分30秒dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.0051Testing软件测试网0jz8m.h6u]:n0MM
51Testing软件测试网drJ0Ba%R q$\
平均时间: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await
svctm %util51Testing软件测试网qh$iFFF
平均时间: dev8-0 0.67 0.00 21.33 32.00 0.01 8.00 8.00 0.53
.x
H
[]S0DEV: 磁盘设备名称
(K:Tr1^'~e7K0tps:每秒到物理磁盘的传送数,即每秒的I/O流量。一个传送就是一个I/O请求,多个逻辑请求可以被合并为一个物理I/O请求
8v)f/`Z UT%b0rc_sec/s:每秒从设备读入的扇区数(1扇区=512字节)51Testing软件测试网6jF ~+jh)t
wr_sec/s: 每秒写入设备的扇区数目51Testing软件测试网p
y
As8Y
avgrq-sz: 平均每次设备I/O操作的数据大小(以扇区为单位)
dbj+Ks\P7YUmL}B0avgqu-sz: 平均I/O队列的长度
@;@hCo lMH0await: 平均每次设备I/O操作的等待时间(毫秒)51Testing软件测试网 N'_@-W2cboN
svctm:平均每次设备I/O操作的服务时间(毫秒)51Testing软件测试网
l:O&uGa-@3KJV
%util:一秒中有百分之几的时间用用于I/O操作
'BfhT;E7s-@'fW,O0