Linux性能调优命令精华Word文件下载.docx
《Linux性能调优命令精华Word文件下载.docx》由会员分享,可在线阅读,更多相关《Linux性能调优命令精华Word文件下载.docx(7页珍藏版)》请在冰豆网上搜索。
![Linux性能调优命令精华Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-11/16/e699575c-7b44-45b3-a383-0ffeb022d0ba/e699575c-7b44-45b3-a383-0ffeb022d0ba1.gif)
echo0>
5.
/etc/init.d/syslogstart
三、iostat命令
格式:
iostat[-c|-d][-k][-t][-V][-x[device]][interval
描述:
iostat是I/Ostatistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视。
它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。
同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。
参数:
-c为汇报CPU的使用情况;
-d为汇报磁盘的使用情况;
-k表示每秒按kilobytes字节显示数据;
-p显示所有存储设备分区信息。
-t为打印汇报的时间;
-v表示打印出版本信息和用法;
-xdevice指定要统计的设备名称,默认为所有的设备;
interval指每次统计间隔的时间;
count指按照这个时间间隔统计的次数。
输出信息:
rrqm/s:
每秒进行merge的读操作数目。
即delta(rmerge)/s
wrqm/s:
每秒进行merge的写操作数目。
即delta(wmerge)/s
r/s:
每秒完成的读I/O设备次数。
即delta(rio)/s
w/s:
每秒完成的写I/O设备次数。
即delta(wio)/s
rsec/s:
每秒读扇区数。
即delta(rsect)/s
wsec/s:
每秒写扇区数。
即delta(wsect)/s
rkB/s:
每秒读K字节数。
是rsect/s的一半,因为每扇区大小为512字节。
wkB/s:
每秒写K字节数。
是wsect/s的一半。
avgrq-sz:
平均每次设备I/O操作的数据大小(扇区)。
即delta(rsect+wsect)/delta(rio+wio)
avgqu-sz:
平均I/O队列长度。
即delta(aveq)/s/1000(因为aveq的单位为毫秒)。
await:
平均每次设备I/O操作的等待时间(毫秒)。
即delta(ruse+wuse)/delta(rio+wio)
svctm:
平均每次设备I/O操作的服务时间(毫秒)。
即delta(use)/delta(rio+wio)
%util:
一秒中有百分之多少的时间用于I/O操作,或者说一秒中有多少时间I/O队列是非空的。
CPU:
表示机器内所有的CPU;
%user表示CPU的利用率;
%nice表示CPU在用户层优先级的百分比,0表示正常;
%system表示当系统运行时,在用户应用层上所占用的CPU百分比;
%iowait表示请求硬盘I/0数据流出时,所占用CPU的百分比;
%idle表示空闲CPU百分比,值越大系统负载越低示例:
avg-cpu:
%user
%nice
%sys
%iowait
%idle
0.88
0.00
0.29
0.60
98.24
我发现IO处理这块所占用的CPU的百分比要比较高啊。
因为我正在做的就是记日志处理与MV更改名称所以CPU比较高!
示例:
1、iostat-d-k110
Device:
tps
kB_read/s
kB_wrtn/s
kB_read
kB_wrtn
sda
121.00
356.00
888.00
356
888
sda1
0
0
sda2
sda3
sda4
sda5
243.00
-d
显示设备(磁盘)使用状态
-k
某些使用block为单位的列强制使用kilobytes为单位
Tps:
该设备每秒的传输次数(一次传输即一次IO请求)
kB_read/s每秒从设备读取的数据量
kB_wrtn/s每秒向设备写入的数据量
kB_read
读取的总数据量
kB_wrtn
写入的总数据量
2、iostat
-d-x-k110
Device:
rrqm/swrqm/s
r/s
w/s
rsec/s
wsec/s
rkB/s
wkB/savgrq-szavgqu-sz
await
svctm
%utilsda
2.00
0.0015.00
600.00
300.00
40.00
0.25
15.53
7.20
10.80
rrqm/s每秒这个设备相关的读取请求有多少被merge了(当系统调用需要读取数据的时候VFS会将请求发到各个FS,
如果FS发现不同的读取请求读取的相同BLOCK的数据FS会将请求作一次合并);
wrqm/s每秒这个设备相关的写入请求有多少被merge了。
Rsec/s每秒读取的扇区数;
wsec/s每秒写入的扇区数r/s
每一个IO请求的处理的平均时间(单位为微秒)
一般系统的IO响应时间应该低于5ms如果大于10ms就比较大了!
在统计时间内所有处理IO时间/总共统计时间
这个参数说明了设备的繁忙程序。
如果此参数到了100%说明此设备接近満负荷运行
(如果是多磁盘即使到了100%因为有并发也未必达到了瓶颈)3、iostat-c110
输出:
%sys%iowait
65.30
1.61
2.23
30.86
能够用来获取CPU的性能数据!
实例分析:
1、iostat-d-k1|grepsda5
7.48
17.44
22.41
527084575
677241228
20.79
380.20
384
132.65
367.35
428.57
360
420
39.60
582.18
588
其中的sda5表示的是物理逻辑分区而不是物理硬盘。
如果有多块硬盘的话就表示为sdasdb这样的多个物理硬盘
2、iostat-d-x-k1
Device:
0.05
6.46
1.85
2.43
35.34
71.15
17.67
35.57
24.87
0.10
22.25
6.20
2.66
磁盘平均响应时间在22.25磁盘的使用率在2.66%,说明磁盘响应有点慢。
四、vmstat
名称:
报告虚拟内存的统计信息
vmstat[-n][延时[次数]]
这个命令是非常有用的务必要熟练掌握!
选项:
-n
开头令第一次的信息只显示一次而不是周期地产生
-S
单位大小
-a
显示活跃和不活跃的内存信息
-s
显示相关虚拟内存统计表输出信息简介:
Proc
r:
运行和等待(CPU时间片)运行的进程数,这个值也可以判断是否需要增加CPU(长期大于1)
b:
处于不可中断状态的进程数。
常见情况由IO引起
Memory
swpd:
切换到交换内存上的内存(默认以KB为单位)
如果它不为0或者比较大比如超过100M,但是siso的值长期为0.这种情况不用担心系统性能
free:
空闲的物理内存
buff:
作为buffercache的内存,对块设备的读写作缓冲
cache:
作pagecache的内存,文件系统级的cache
如果cache值大的时候说明cache住的文件数多,如果频繁访问到的文件都能被cache住那磁盘的读IObi会非常小。
Swap
si:
交换内存使用,由磁盘调入内存
so:
交换内存使用,由内存调入磁盘
如果系统的内存够用的时候这两个值都是0,如果这两个值长期大于0说明系统性能受到影响。
如果系统的内存free很少,但是siso也很少,那系统性能不会受到影响的!
IO
bi:
从块设备读入的数据总量(读磁盘)(KB/s)
bo:
写入到块设备的数据总量(写磁盘)(KB/s)
System
in:
每秒产生的中断次数
cs:
每秒产生的上下文切换次数
这两个值越大,会看到由内核消耗的CPU时间会越多!
CPU
us:
用户进程消耗的CPU时间百分比
us的值比较高时,说明用户进程的消耗的CPU时间多,如果长期超过50%的使用那就要考虑优化程序算法或加速。
sy
内核进程消耗的CP