Chinaunix首页 | 论坛 | 博客
  • 博客访问: 21482
  • 博文数量: 7
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 92
  • 用 户 组: 普通用户
  • 注册时间: 2013-07-30 21:19
个人简介

07年毕业至今,一直从事运维工作。目前在深圳市酷开网络科技有限公司担任运维工程师。愿与运维人员共同学习,共同研究。

文章分类

全部博文(7)

文章存档

2015年(6)

2013年(1)

我的朋友

分类: 系统运维

2015-05-08 15:50:26

前言:本人2014年2月18日编写的服务器性能测试培训文档,供新员工学习。

地址:http://linuxpython.blog.51cto.com/10015972/1643910

第一部分:服务器性能测试

一、了解测试工具sysbench

sysbench是一款开源的多线程性能测试工具,可以执行CPU/内存/线程/IO/数据库等方面的性能测试。

数据库目前支持MySQL/Oracle/PostgreSQL

二、学习安装sysbench

1.编译安装

#wget  -c 

#tar zxvf  sysbench-0.4.12.tar.gz

#cd sysbench-0.4.12

#./configure && make && make install

如果需要测试Oracle/PostgreSQL,则在configure时需要加上--with-oracle或者--with-pgsql参数

2.debian 源安装

apt-get install sysbench

三、学习使用sysbench

测试项目:

fileio – File I/O test

cpu – CPU performance test

memory – Memory functions speed test

threads – Threads subsystem performance test

mutex – Mutex performance test(互斥性能测试)

oltp – OLTP test

指令: prepare(测试前准备工作) run(正式测试) cleanup(测试后删掉测试数据) help version

1.cpu测试 ./sysbench --test=cpu --cpu-max-prime=20000 run

2.线程数测试            ./sysbench --test=threads --num-threads=512 --thread-yields=100 --thread-locks=2 run

3.磁盘I/O性能测试 

./sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw prepare

./sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw run

./sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw cleanup

4.内存测试 ./sysbench --test=memory --num-threads=64 --memory-block-size=8192 --memory-total-size=5G run

5. Mutex测试      

./sysbench --test=mutex --num-threads=1500 --max-requests=2000 --mutex-num=10240 --mutex-locks=100000 --mutex-loops=15000 run

四、学习dd工具测试IO

往磁盘中写入1G文件,检查所消耗的时间,磁盘的传输速率,如下

 dd if=/dev/zero of=img.img bs=1M count=10240

 

 

第二部分:网络性能测试

一、学习使用iperf工具

Iperf是一个网络性能测试工具。可以测试TCPUDP带宽质量,可以测量最大TCP带宽,具有多种参数和UDP特性,可以报告带宽,延迟抖动和数据包丢失。

1.TCP测试

服务器执行:./iperf -s -i 1 -w 1M '这裏是指定windows如果是 iperf -s则windwos默认大小为8kbyte/s

客户端执行:./iperf -c host -i 1 -w 1M

其中-w表示TCP window size,host需替换成服务器地址。

2.UDP测试

服务器执行:./iperf -u -s

客户端执行:./iperf -u -c 10.255.255.251 -b 900M -i 1 -w 1M -t 60

其中-b表示使用多少带宽,1G的线路你可以使用900M进行测试。

二、学习使用iptraf工具

Iptraf是一款linux环境下,监控网络流量的一款绝佳的免费小软件,特别是安装到防火墙上,与Iptables一起工作,监控流经防火墙的网络异常,效果非常好。

三、学习使用smokeping工具

Smokeping 主要是监视网络性能,包括常规的 ping,用 echoping 监视 www 服务器性能,监视 dns 查询性能,监视 ssh 性能等。底层也是 rrdtool 做支持,特点是画的图非常漂亮,网络丢包和延迟用颜色和阴影来表示。

第三部分:数据库性能测试

一、学习使用sysbench工具

首先需要创建默认的sbtest数据库,或者使用–mysql-db指定一个已经存在的数据库

生成测试数据,引擎为myisam,表大小为1000000条记录

sysbench --test=oltp --mysql-table-engine=myisam --oltp-table-size=1000000 --mysql-user=root --mysql-password=admin --mysql-socket=/tmp/mysqld.sock prepare

执行测试

sysbench --test=oltp --mysql-table-engine=myisam --oltp-table-size=1000000 --mysql-user=root --mysql-password=admin --mysql-socket=/tmp/mysqld.sock run

清理现场

./sysbench--test=oltp --mysql-table-engine=myisam --oltp-table-size=1000000 \

--mysql-user=root --mysql-socket=/opt/mysql/run/mysql.sock cleanup

二、学习使用mysqlslap工具

1)执行一次测试,分别100200个并发,执行1000次总查询,测试两种存储引擎

mysqlslap -S /tmp/mysqld.sock -u root -padmin -T -a -c 100,200 --number-of-queries=1000 -x 4 -y 4 -e myisam,innodb -i 5

2)分别50,100,200个并发,执行20次查询

mysqlslap -uroot -padmin --concurrency=50,100,200 --iterations=20 --number-int-cols=4 --number-char-cols=35 --auto-generate-sql --auto-generate-sql-add-autoincrement --auto-generate-sql-load-type=read --engine=archive,innodb --number-of-queries=200 --verbose --socket=/tmp/mysqld.sock

三、学习使用慢查询工具mysqlsla测试select,update性能

mysqlsla -lt slow  -sf "+select,update" -top 100 -sort c_sum -db  userbehavior dowload_server1-slow.log >num_time.log

 

第四部分:WEB压力测试

一、 学习webbench工具

1. 学习安装webbench

# wget http://blog.s135.com/soft/linux/webbench/webbench-1.5.tar.gz

# tar zxvf webbench-1.5.tar.gz

# cd webbench-1.5

# make && make install

2. 学习使用webbench

# webbench -c 500 -t 30 

  参数说明:-c表示并发数,-t表示时间()

二、学习loadrunner工具

1.学习安装loadrunner

2.学习使用loadrunner

三、学习ab工具(适用于apache)

1. ab -n1000 -c100 

其中-n代表请求数,-c代表并发数

模拟100个并发用户,对一个页面发送1000个请求

 

学习服务器实时性能分析数据

Iptraf(查网卡带宽)

Top (查CPU,MEMLOAD等性能情况)

Vmstat 3(CPU性能检查)

Iostat –x 3(IO实时情况)

阅读(412) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~