磁盤性能指標

磁盤性能指標
五個常見指標: 使用率、飽和度、IOPS、吞吐量以及響應時間。這五個指標,是衡量磁盤性能的基本指標。
• 使用率,是指磁盤處理 I/O 的時間百分比。過高的使用率(比如超過 80%),通常意味着磁盤 I/O 存在性能瓶頸。
• 飽和度,是指磁盤處理 I/O 的繁忙程度。過高的飽和度,意味着磁盤存在嚴重的性能瓶頸。當飽和度爲 100% 時,磁盤無法接受新的 I/O 請求。
• IOPS(Input/Output Per Second),是指每秒的 I/O 請求數。
• 吞吐量,是指每秒的 I/O 請求大小。
• 響應時間,是指 I/O 請求從發出到收到響應的間隔時間。

這些指標,我們在看的時候, 不要孤立地去比較某一指標,而要結合讀寫比例、I/O 類型(隨機還是連續)以及 I/O 的大小,綜合來分析。
舉個例子,在數據庫、大量小文件等這類隨機讀寫比較多的場景中,IOPS 更能反映系統的整體性能;而在多媒體等順序讀寫較多的場景中,吞吐量更能反映系統的整體性能。

觀測磁盤的I/O性能指標: iostat
iostat 是最常用的磁盤 I/O 性能觀測工具,它提供了每個磁盤的使用率、IOPS、吞吐量等各種常見的性能指標,當然,這些數據實際上來自 /proc/diskstats。
[root@host1 ~]# iostat -d -x 1 #-d -x 1 展示所有的磁盤I/O指標, 每1秒輸出一組數據
磁盤性能指標
這些指標中,重點注意:
• %util ,就是我們前面提到的磁盤 I/O 使用率;
• r/s+ w/s ,就是 IOPS;
• rkB/s+wkB/s ,就是吞吐量;
• r_await+w_await ,就是響應時間。

關於更多的顯示選項, 可以在iostat的man手冊中查詢

觀測進程的I/O性能指標: pidstat
磁盤性能指標
輸出中每項的含義:
• 每秒讀取的數據大小(kB_rd/s),單位是 KB;
• 每秒發出的寫請求數據大小(kB_wr/s),單位是 KB;
• 每秒取消的寫請求數據大小(kB_ccwr/s),單位是 KB。

根據 I/O 大小對進程排序: iotop
[root@host1 ~]# iotop
磁盤性能指標
前兩行分別表示,進程的磁盤讀寫大小總數和磁盤真實的讀寫大小總數。因爲緩存、緩衝區、I/O 合併等因素的影響,它們可能並不相等。
剩下的部分,則是從各個角度來分別表示進程的 I/O 情況,包括線程 ID、I/O 優先級、每秒讀磁盤的大小、每秒寫磁盤的大小、換入和等待 I/O 的時鐘百分比等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章