概述
作为服务端编程的程序员,尤其是大量用到存储,或者是存储系统的管理人员,应该要对服务器的磁盘保持关于性能的最基本的思考和测试的习惯。
操作
下面是一些测试磁盘性能的比较简单的方法,假设 /tmp/tempfile 创建在本地磁盘,/var/lib/longhorn/tempfile 创建在网络磁盘,通过下面的方法观察一下具体的速度。
1
2
3
4
5
6
7
8
  | 
sync; dd if=/dev/zero of=/tmp/tempfile bs=1M count=1024; sync
dd if=/tmp/tempfile of=/dev/null bs=1M count=1024
sync; dd if=/dev/zero of=/var/lib/longhorn/tempfile bs=1M count=1024; sync
dd if=/var/lib/longhorn/tempfile of=/dev/null bs=1M count=1024
rm -rf /var/lib/longhorn/tempfile
rm -rf /tmp/tempfile
  | 
 
iotop
1
2
  | 
# 安装iotop
yum install -y iotop
  | 
 
下面是一些具体选项的含义。
1
2
3
4
5
6
7
  | 
-o: 只显示有io操作的进程
-b: 批量显示,无交互,主要用作记录到文件。
-n NUM: 显示NUM次,主要用于非交互式模式。
-d SEC: 间隔SEC秒显示一次。
-p PID: 监控的进程pid。
-u USER: 监控的进程用户。
-k: 使用千字节而不是人类友好单位
  | 
 
测试几个选项。
iostat
1
2
  | 
# 安装iostat
yum install -y sysstat
  | 
 
测试命令。
参考资料
- How to install and use iostat
 
			
				警告
		    
			
				
					本文最后更新于 2017年2月1日,文中内容可能已过时,请谨慎参考。