查看TPS和吞吐量信息
[root@controller ~]#iostat -d -k 1 10
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 19.00 0.00 112.00 0 112
sda1 0.00 0.00 0.00 0 0
sda2 0.00 0.00 0.00 0 0
sda3 0.00 0.00 0.00 0 0
sda4 0.00 0.00 0.00 0 0
sda5 3.00 0.00 16.00 0 16
sda6 0.00 0.00 0.00 0 0
sda7 16.00 0.00 96.00 0 96
tps:該設備每秒的傳輸次數,一次傳輸的意思是“一次I/O請求”
kB_read/s:每秒從設備讀取的數據量
kB_wrtn/s :每秒向設備寫入的數據量
kB_read :讀取的總數據量
kB_wrtn :寫入的總數量數據量
使用-x獲得更多信息
查看設備使用率(%util)、響應時間(await)
[root@controller ~]#iostat -d -x -k 1 10
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sda 0.00 22.00 0.00 18.00 0.00 160.00 17.78 0.07 3.78 3.78 6.80
sda1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sda2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sda3 0.00 15.00 0.00 2.00 0.00 68.00 68.00 0.01 6.50 6.50 1.30
sda4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sda5 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sda6 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sda7 0.00 7.00 0.00 16.00 0.00 92.00 11.50 0.06 3.44 3.44 5.50
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 隊列是非空的.即 delta(use)/s/1000 (因為use的單位為毫秒)
(如果 %util 接近 100%,說明產生的I/O請求太多,I/O系統已經滿負荷,該磁盤可能存在瓶頸.
%util:在統計時間內所有處理IO時間,除以總共統計時間。例如,如果統計間隔1秒,該設備有0.8秒在處理IO,而0.2秒閑置,那么該設備的%util = 0.8/1 = 80%,所以該參數暗示了設備的繁忙程度。一般地,如果該參數是100%表示設備已經接近滿負荷運行了(當然如果是多磁盤,即使%util是100%,因為磁盤的並發能力,所以磁盤使用未必就到了瓶頸)。
)
部署一個程序時(我測試的是一個實時上傳日志的程序),對系統的cpu、內存、io等都要有所考慮,保證系統高效的運行。
如果程序本身處理的包特別小,事件很多,壓力大且沒有間隔的話,占用CPU的資源會很多
如果用磁盤緩存,不用內存緩存的話,能夠支持斷點重傳,保證數據的可靠性上傳,如突然斷電等情況,存入磁盤緩存的數據等到恢復后會依然上傳,而不會丟失,但是相對的也會增加讀寫磁盤的次數,如果數據量比較小,速度還是可以忍受的。
####################################################################################
http://blog.csdn.net/avilifans/article/details/12002019