您好,登錄后才能下訂單哦!
判斷磁盤極限性能誤區:只通過iostat 中的 %util 指標確定磁盤是否達到帶寬或iops極限
?
背景:
????在判斷磁盤是否達到極限性能時,總有人通過 iostat -x 中的 %util 指標來確認磁盤是否帶寬帶寬或IOPS瓶頸,其實這是不對的,特做如下說明:
結論:
????iostat 中的 %util 基本已經沒有任何作用了,svctm也沒什么參考意義
????磁盤是否達到真正極限瓶頸,需要參考通過fio等工具壓測出的極限帶寬和IOPS值
%util與硬盤設備飽和度
????%util表示該設備有I/O(即非空閑)的時間比率,不考慮I/O有多少,只考慮有沒有。
????由于現代硬盤設備都有并行處理多個I/O請求的能力,所以%util即使達到100%也不意味著設備飽和了。
????舉個簡化的例子:某硬盤處理單個I/O需要0.1秒,有能力同時處理10個I/O請求,那么當10個I/O請求依次順序提交的時候,需要1秒才能全部完成,在1秒的采樣周期里%util達到100%;而如果10個I/O請求一次性提交的話,0.1秒就全部完成,在1秒的采樣周期里%util只有10%。可見,即使%util高達100%,硬盤也仍然有可能還有余力處理更多的I/O請求,即沒有達到飽和狀態。
????那么iostat(1)有沒有哪個指標可以衡量硬盤設備的飽和程度呢?很遺憾,沒有。
參考文章:
【1】容易被誤讀的IOSTAT:http://linuxperf.com/?p=156
【2】深入理解iostat:https://bean-li.github.io/dive-into-iostat/
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。