测试工具的使用说明
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
测试工具的使用说明
1. atop
atop是一个高级的Linux系统全屏性能监视器,会定期的显示CPU、内存、磁盘、网络的负载信息。
在终端输入./atop会出现如下界面:
在界面中键入‘m’,就会显示每个进程的内存情况,如下图:
在界面中键入‘s’, 就会显示与调度有关的进程信息,如下图:
在界面中键入‘v’,就会显示每个进程的全部信息,如下图:
在界面中键入‘c’,就会显示每个进程的命令行,如下图:
2.bonnie++
1.使用说明
-d:在测试时会生成一些文件,并读或更改这些文件。这个参数是设置测试文件放置的路径。
-s:单个测试文件的尺寸。这个参数值必须大于等于2倍测试使用的内存。测试时应该用大文件尺寸。
-m:测试的机器名称
-r:测试需要用多少内存。如果省略这个值,则会用全部的物理内存。
-x:循环几次
-u:指定执行测试的OS用户。当不是以root执行时,必须显式指定。
-g 测试文件的组,默认是执行bonnie++的当前用组。
-b 在每次写文件时调用fsync()函数,对于测试邮件服务器或者数据库服务器这种通常需要同步操作的情况比较适合,而不使用该参数则比较适合测试copy文件或者编译等操作的效率。
2.结果分析
下面看一个测试结果,通过这个结果我们解释一下到底bonnie++在测试过程中都作了什么,而每一个输出的结果又表示了什么。
依次解读一下,从Writing with putc()开始到Delete files in random orde…结束,这是bonnie++作的12项测试,这12项测试依次对应12项结果,而这12项结果又被分为了5大类,分别是Sequential Output(写测试),Sequential Input(读测试),Random Seeks(读写测试),Sequential Create(顺序读写文件测试)和Random Create(随意读写文件测试)。
那么测试步骤和测试结果依次对应的顺序就是:
Writing with putc() -> Sequential Output的Per Chr
Writing intelligently -> Sequential Output的Block
Rewriting -> Sequential Output的Rewrite
Reading with getc() -> Sequential Input的Per Chr
Reading intelligently -> Sequential Input的Block
start 'em -> Random Seeks
Create files in sequential order -> Sequential Create的Create Stat files in sequential order -> Sequential Create的Read
Delete files in sequential order -> Sequential Create的Delete Create files in random order -> Random Create的Create
Stat files in random order -> Random Create的Read
Delete files in random order -> Random Create的Delete
每个结果中又包括了2项数值,一个是K字节数或者文件数,另一个是%CP,就是执行这项测试时CPU的平均占用率。对于输出结果的评价,我们认为在相等CPU的占用率情况下,存取字节数越高表示该存储设备的吞吐量越大,自然性能也就越好。
Per Chr表示以字符为单位读写文件
Block表示以block为单位读写文件
Rewrite表示修改并重写已经存在的文件的每一个block
K/sec表示每秒读或写文件的速率,以K为单位
%CP表示在某阶段执行操作时平均消耗的CPU
可以看到,该机器的字符写速度可达8909K/sec,block写速度可达20708K/sec,字符读速度可达27673K/sec,block读速度可达80684K/sec。
3.Dbench Tbench
Dbench和Tbench是用来模拟工业标准的Netbench负载测试工具来评估文件服务器的测试工具。
Dbench只产生文件系统的IO负载。
-t 设置运行时间,以秒为单位。
-D 测试运行的基本目录测试时产生的一些文件存放位置,测试完毕后会自动把这些文件删除
-c 负载文件的位置 Dbench和Tbench 都会读取一个负载描述文件client.txt,这个文件是安装程序自带的,通过读取它来产生负载。
测试结果:
从上图可看到模拟100个client同时运行10秒的吞吐量68.9123MB/sec。
Tbench产生TCP负载。
运行Tbench之前首先要在服务器上面启动tbench_srv。
测试结果:
从上图可看到模拟100个client同时运行10秒的吞吐量117.434MB/sec。
4.Fdtree
Fdtree是一个用来测试文件系统元数据性能的工具。
参数含义:
-C 只创建目录树
-D 打开调试
-R 只移除目录树
-l 创建目录的递归等级,默认为4
-d 每个等级所要创建的目录个数
-f 每个目录下所要创建的文件个数
-o 开始测试时的路径名
-s 文件大小(是以block计算的,linux下block大小为4096Bytes),默认为10 fdtree.bash –d 1 –l 2 –f 10000 –s 10000
这个例子是一个文件压力的测试,创造的目录结构的等级为2,每个等级下创建1个目录,每个目录下文件的个数为10K,每个文件的大小为10000*4096Bytes=40.96MB,总的数据大小为2*10000*40.96MB=819.2GB。