Sysbench测试及说明

By | 2014-03-17

dep: yum install sysbench.x86_64

manual page: http://sysbench.sourceforge.net/docs/

sample page: http://wiki.gentoo.org/wiki/Sysbench

相对于单线程的sql-bench(MySQL提供的测试套件), sysbench在CPU, IO, Mutex, Thread等方面具有更为全面和仿真的特性, 在数据库主机中着重测试CPU, IO, Memory三方面(Mutex和Thread暂不用,业务量在这两方面没有特别的需求)。

CPU测试:
–cpu-max-prime : 基本的算术运算数量,可以指定大点

sysbench --test=cpu --cpu-max-prime=20000 run

Memory测试:
默认传输100G大小的数据量,做read/write操作, 可以指定thread数量来测试

sysbench --test=memory --num-threads=8 run

IO测试:
IO测试的前流程是生成文件,测试,清除文件; 测试条目包括:顺序读/写,随机读/写,混合(随机)读/写等,默认读写比率为1.5.

sysbench --test=fileio --file-total-size=20G  prepare    #生成文件
sysbench --test=fileio --file-total-size=20G --file-test-mode=rndrw --init-rng=on --max-time=300 --max-requests=0 run  #混合随机读写
sysbench --test=fileio --file-total-size=20G  cleanup    #清除文件

测试指标是一个很模糊的标准,在CPU和Memory方面,运算和传输本身是很快的,不同参数的指定对结果的影响也很大,可以简单的和其它线上主机做对比来决定测试主机是否可以做应用主机。
在数据库主机方面,IO是很大的瓶颈,1w转的硬盘+raid5随机写为1k+左右,混合读写会高点。

FYI: http://www.percona.com/resources/mysql-white-papers/percona-report-measuring-scalearc-sysbench

Leave a Reply

Your email address will not be published. Required fields are marked *