sysbench测试服务器性能
sysbench目前已经有0.5的版本,不过最普遍使用的依旧是0.4.12,所以接下来我们会以0.4.12这个版本作为测试
Step1:下载安装sysbench
wget http://pkgs.fedoraproject.org/repo/pkgs/sysbench/sysbench-0.4.12.tar.gz/3a6d54fdd3fe002328e4458206392b9d/sysbench-0.4.12.tar.gz
tar zxvf sysbench-0.4..tar.gz
yum install libtool.x86_64 openssl-devel.x86_64 openssl-static.x86_64
cd sysbench-0.4./
libtoolize --force --copy
./autogen.sh
./configure --prefix=/usr/local/sysbench
make
make install
Step2: 执行测试脚本(请不要直接粘贴此脚本到你机器上运行,除非你知道它在做什么):
[root@DBServer data]# cat sysbench_all.sh
#!/bin/bash result_dir='/data/result'
io_file_dir='/data/iotest' if [ ! -d $result_dir ];
then
mkdir $result_dir
fi #------------------------------fileio test-----------------------------------
###RAND WRITE - thread
if [ ! -d $io_file_dir ];
then
mkdir $io_file_dir
fi cd $io_file_dir #sysbench --test=fileio --file-total-size=256G --file-num= prepare
#sleep for rwtype in seqwr seqrewr seqrd rndrd rndwr rndrw;
do
for numthread in ;
do
sysbench --test=fileio --file-total-size=256G --file-test-mode=$rwtype --max-time= --max-requests= --file-block-size=4K --file-num= --num-threads=$numthread run >> $result_dir/io_${rwtype}_thread${numthread}.txt ;
sleep ;
done
done #-----------------------------cpu test-------------------------------- for each in `seq `;
do
sysbench --test=cpu --cpu-max-prime= --num-threads=$each run >> $result_dir/CPU_thread$each.txt ;
sleep
done #------------------------------ram test-------------------------------- # for read
for each in `seq `;
do
sysbench --test=memory --memory-block-size=4K --memory-scope=global --memory-total-size=256G --memory-oper=read --num-threads=$each run >> $result_dir/RamRead_thread$each.txt ;
sleep ;
done #for write
for each in `seq `;
do
sysbench --test=memory --memory-block-size=4K --memory-scope=global --memory-total-size=256G --memory-oper=write --num-threads=$each run >> $result_dir/RamWrite_thread$each.txt ;
sleep ;
done #--------------------------mysql test------------------------------ # start mysql
mysqld_safe --defaults-file=/data/mysql/my3306.cnf & #wait mysql startup completely
sleep #prepare is 2G
#sysbench --test=oltp --db-driver=mysql --mysql-host=127.0.0.1 --mysql-user=root --mysql-password= --mysql-db=t_sysbench --oltp-table-size= --num-threads= prepare # only read
for each in ;
do
sysbench --test=oltp --oltp-table-size= --db-driver=mysql --mysql-host=127.0.0.1 --mysql-db=t_sysbench --mysql-user=root --mysql-password= --max-time= --oltp-read-only=on --max-requests= --num-threads=$each run >> $result_dir/mysql_read_thread$each.txt
sleep
done #read and write
for each in ;
do
sysbench --test=oltp --oltp-table-size= --db-driver=mysql --mysql-host=127.0.0.1 --mysql-db=t_sysbench --mysql-user=root --mysql-password= --max-time= --max-requests= --num-threads=$each run >> $result_dir/mysql_rw_thread$each.txt
sleep
done mysqldadmin -uroot -p123 -h127.0.0. shutdown
Step3:分析处理,需要用到类似如下的处理分析脚本(以分析mysql为例)
[root@DBServer result]# awk -F '[():]' '/Number of threads:/{printf $2 "\t"} /transactions:/{printf $3 "\t"} /deadlocks:/{printf $2 "\t"} /read\/write requests:/{printf $3 "\t"} /approx. 95 percentile:/{printf $2 "\n"}' mysql_rw_thread* | sort -k -n
403.66 per sec. 7669.51 per sec. .83ms
1409.01 per sec. 26771.12 per sec. .20ms
2704.40 per sec. 51383.70 per sec. .30ms
4032.52 per sec. 76618.00 per sec. .51ms
4504.20 per sec. 85580.07 per sec. .29ms
5549.82 per sec. 105447.54 per sec. .58ms
5920.90 per sec. 112499.04 per sec. .54ms
参考资源:
https://wiki.mikejung.biz/Sysbench
sysbench测试服务器性能的更多相关文章
- 利用 apache ab 测试服务器性能
安装步骤:https://blog.csdn.net/ahaaaaa/article/details/51514175 在Windows系统下,打开cmd命令行窗口,定位到apache安装目录的bin ...
- 【阿里云产品公测】PTS压力测试服务器性能
作者:阿里云用户xsnjxjj 在PTS服务之前,经常使用webbench来对服务器进行压力测试,在看到阿里云PTS服务的介绍以后,深深的被PTS强大的功能所吸引 非常感谢阿里云团队给予的测试 ...
- 用systemtap对sysbench IO测试结果的分析1
http://www.actionsky.com/docs/archives/171 2016年5月6日 黄炎 近期在一些简单的sysbench IO测试中, 遇到了一些不合常识的测试结果. 从结 ...
- 使用ab对nginx进行压力测试
nginx以高并发,省内存著称. 相信大多数安装nginx的同学都想知道自己的nginx性能如何. 我想跟大家分享下我使用ab工具的压力测试方法和结果, ab是针对apache的性能测试工具,可以只安 ...
- Apache-AB压力测试实例
一 AB背景介绍 Apache附带的压力测试工具apache bench--简称ab,非常容易使用,并且完全可以摸你各种条件对Web服务器发起测试请求.ab可以直接在Web服务器本地发起测试请求,这对 ...
- 敌情篇 ——DDoS攻击原理
敌情篇 ——DDoS攻击原理 DDoS攻击基础 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要目的是让指定目标无法提供正常服务,甚至从互联网上消失,是 ...
- C10K问题2
http://blog.csdn.net/zhoudaxia/article/details/12920993 是时候让 Web 服务器同时处理一万客户端了,你不觉得吗?毕竟,现在的 Web 是一个大 ...
- study notes: high performance linux server programming
1:linux网络API分为:socker地址API,socker基础API,网络信息API 1,socker地址API:包含IP地址和端口(ip, port).表示TCP通信的一端. 2,socke ...
- MySQL实验准备(二)--Python模拟数据(MySQL数据库)
Python模拟数据(MySQL数据库) 数据模拟 目的:模拟多个表的插入和查询数据的模拟,再通过基准测试脚本测试服务器性能和收集数据,仿真模拟. 备注: 如果需要基础的python环境,可以查看&l ...
随机推荐
- [Android] 转移“植物大战僵尸2”存档的办法,无需root
作者:zyl910 查过了很多文章,都说需要root后才能转移存档.但很多时候是不能root的,此时该怎么办呢? 我研究了很久,最终找到了一种办法,无需root也能转移存档. 一.备份 我用的是联想手 ...
- 【转载】酷酷的CSS3三角形运用
转载:http://www.cnblogs.com/keepfool/p/5616326.html 概述 在早期的前端Web设计开发年代,完成一些页面元素时,我们必须要有专业的PS美工爸爸,由PS美工 ...
- fastreport totalpage 只有设置doublepassreport为true 才正确否则为0
fastreport totalpage 只有设置doublepassreport为true 才正确否则为0
- iPhone私有API
一.基本知识 iPhone中的API除了公开的API:Published API外(或者叫文档中记录的API:Documented API),还有两类API:私有API:Private API和未公开 ...
- Strategy策略设计模式
1.策略模式和状态模式的区别和联系(本部分转载自:http://letscoding.cn/java%E4%B8%AD%EF%BC%8C%E7%8A%B6%E6%80%81%E6%A8%A1%E5%B ...
- select into的不同数据库实现
DB2中修改表的schema除了通常的创建别名,还可以删除表重建 删除表的顺序应该是先在另一个Schema下新建表,然后使用select ino将原表的数据导入新表,再删除原表. 实现如下: 在Sch ...
- SymmetricDS 数据库双向同步开源软件入门
一句话概括该软件:SymmetricDS是一个文件和数据库同步软件,开源的,支持多主复制,同步时过滤和在异构的网络环境中进行数据转换传输.它支持单向和双向上的多个订阅者,异步的数据复制. 以下是从CS ...
- CentOS6下Haproxy的安装配置
Haproxy 是一个开源的负载均衡和反向代理软件,其提供了高可用的网络服务.其一般是应用于web服务,但同时也能为SMTP和终端服务等提供可靠的支持. 1.下载安装haproxy wget ftp: ...
- JS_Detail和Discipline
编码原则 Js控件代码3部曲 (1)设置元素的 状态 在onready中添加 (2)设置元素的 动作, 每个动作 封装成 function(enclosure) (3)remove load之前 删除 ...
- OpenGL cubeMap
glsl 的reflect(I,N)其中I是 眼睛(camera)位置到顶点位置的方向向量,N为顶点法线,必须要归一化 橙宝书里给出的计算过程是这样的:reflect(I,N) = I - 2 *do ...