一台服务器比较性能无外乎内存、cpu使用率、IO使用率,把这3样优化好了,你服务器的负载就要小很多,当然网络情况不在我的考虑范围,毕竟网络这个情况是很不稳定,就算你服务器上把网络优化得再好,idc不给力也没用,除非是自己公司机房,好了,今天只说下怎么找IO占用高的程序.
系统:centos 5.5
1.开启IO监控
sysctl vm.block_dump=1或echo 1 >/proc/sys/vm/block_dump
2.开启后内核会将IO读写dump到日记,用dmesg查看:
dmesg
3.进程读写block到磁盘dm-0:
mysqld(7822): READ block 78196624 on dm-0
kjournald(529): WRITE block 211136 on dm-0
bash(8336): dirtied inode 7391146 (dmesg) on dm-0
4.统计当前占用IO最高的10个进程:
dmesg |awk -F: '{print $1}'|sort|uniq -c|sort -rn|head -n 10