當 iowait 時查看誰在存取硬碟(續)

續: http://ssorc.tw/rewrite.php/read-714.html

轉貼這裡http://www.cppblog.com/go-benny/archive/2008/04/23/47908.html

定位IOWait高的一些方法和工具:

在Linux性能分析時經常使用的工具包括:top, iostat, vmstat等


IOWait高的一些處理方法

1、檢查RAID的狀態,比如是否正在重建或者沒有初始化
2、替換操作系統的內核,最好使用發行版標準的Linux kernel,因為有比較多的補丁
3、檢查/proc/sys/vm下面是否可以優化
4、是否使用了文件系統,文件系統是否有優化的選項,比如在RAID5上採用xfs文件系統時,
   
可以調節一些參數優化性能
5、客戶端程序是否產生了過大的壓力,比如磁盤的讀寫性能只有10MB/s,每個線程的讀寫
   
速度為5MB/s,那麼如果讀寫線程數為20的話,無疑會造成IOWait過高

6、查看進程狀態
ps -eo pid,user,wchan=W​​IDE-WCHAN-COLUMN -os,cmd|awk ' $4 ~ /D/ {print $0}'
lsof -p $pid

7、使用block_dump

/etc/init.d/syslog stop
echo 1 > /proc/sys/vm/block_dump
sleep 60
dmesg | awk '/(READ|WRITE|dirtied)/ {process[$1]++} END {for (x in process)
print process[x],x}' |sort -nr |awk '{print $2 " " $1}' |
head -n 10

echo 0 > /proc/sys/vm/block_dump
/etc/init.d/syslog start
標籤: iowait 硬碟
評論: 0 | 引用: 0 | 閱讀: 1738 | 列印 | 文件 | 轉發

發表評論
暱 稱: 密 碼:
網 址: E - mail:
驗證碼: 驗證碼圖片 選 項:
頭 像:
內 容:
  • 粗體
  • 斜體
  • 底線
  • 插入圖片
  • 超連結
  • 電子郵件
  • 插入引用
  • 表情符號