对于IO密集型的应用,我们可以用iostat来查看进程IO请求下发的数量、系统处理IO请求的耗时,进而分析进程与操作系统的交互过程中IO方面是否存在瓶颈,具体信息请参见
这里。
常见用法如下:
#iostat -d -k 1 10 #查看TPS和吞吐量信息
#iostat -d -x -k 1 10 #查看设备使用率(%util)和响应时间(await)
#iostat -c 1 10 #查看CPU状态
重要参数有几个:
(1)await:每次IO请求的平均等待时间即IO响应时间,单位为毫秒,一般系统IO响应时间低于5ms,如果大于10ms就比较大了。
(2)%util:每秒钟有百分之多少的时间用于IO操作即一秒钟有多少时间IO队列是非空的,该参数标示了设备的繁忙程度,一般如果该参数是100%,则表示设备已经接近满负荷运行了(当然如果是多磁盘,即使是%util是100%,因为磁盘的并发能力,所以磁盘也未必到了瓶颈)。
(3)svctm:
每次IO请求的平均处理时间,单位为毫秒,该参数一般与await结合使用。
阅读(2042) | 评论(0) | 转发(0) |