siege压力测试,siege会将接口进行模拟并发,返回每秒的并发数!

一、siege的安装
下载:wget
一、siege的安装
下载:wget http://download.joedog.org/siege/siege-latest.tar.gz http://www.joedog.org/pub/siege/siege-latest.tar.gz
解压: tar -zxvf siege-latest.tar.gz
cd siege-..*
./configure --prefix=/usr/local/siege --mandir=/usr/local/man --with-ssl=/usr/local/ssl
mkdir -p /usr/local/siege/etc
mkdir -p /usr/local/siege/var
make
make install

查看配置文件
/usr/local/siege/bin/siege -C

二、siege的使用
举例说明:

50个用户(每次并发量)重复100次 共产生 50*100 个请求
/usr/local/siege/bin/siege -c 50 -r 100 www.baidu.com

50个用户 重复100次 发送GET参数
/usr/local/siege/bin/siege -c 50 -r 100  http://www.baidu.com/s?wd=siege&rsv_spt=1&issp=1&rsv_bp=0&ie=utf-8&tn=baiduhome_pg&rsv_sug3=4&rsv_sug=2&rsv_sug1=4&rsv_sug4=60

50个用户 重复100次 发送POST参数 (注意引号)
/usr/local/siege/bin/siege -c 50 -r 100  "https://www.abc.com/a.php POST name=zhangsan"

50个用户 重复100次 发送POST参数(从文件中读取)
/usr/local/siege/bin/siege -c 50 -r 100  "https://www.abc.com/a.php POST < /root/ab_test/post.xml"

另外还有挺多参数
详情请man 或 siege -h

siege报表解析,请man查看,暂略(有点累了,不想写了。。。。。)。
Transactions:                     10 hits    :服务器接收的请求数
Availability:                 100.00 %       :有效情况的比例
Elapsed time:                   1.06 secs    :  测试所用的时间
Data transferred:               0.04 MB    :每个模拟用户的数据传输量
Response time:                  0.03 secs    :响应每个模拟用户请求的平均时间
Transaction rate:               9.43 trans/sec    :服务器每秒处理事务的平均数
Throughput:                     0.04 MB/sec    :服务器每秒跟所有模拟用户的数据传输量
Concurrency:                    0.25    :每秒的模拟连接
Successful transactions:          10    :处理成功的事务数(code<400)
Failed transactions:               0    : 处理失败的事务数(code>400)
Longest transaction:            0.04    :最长的事务处理时间
Shortest transaction:           0.02    :最短的事务处理时间

siege -c 200 -r 10 -f example.url
-c是并发量,-r是重复次数。 url文件就是一个文本,每行都是一个url,它会从里面随机访问的。

example.url内容:

http://www.licess.cn
http://www.vpser.net
http://soft.vpser.net

结果说明
Lifting the server siege… done.
Transactions: 3419263 hits //完成419263次处理
Availability: 100.00 % //100.00 % 成功率
Elapsed time: 5999.69 secs //总共用时
Data transferred: 84273.91 MB //共数据传输84273.91 MB
Response time: 0.37 secs //相应用时1.65秒:显示网络连接的速度
Transaction rate: 569.91 trans/sec //均每秒完成 569.91 次处理:表示服务器后
Throughput: 14.05 MB/sec //平均每秒传送数据
Concurrency: 213.42 //实际最高并发数
Successful transactions: 2564081 //成功处理次数
Failed transactions: 11 //失败处理次数
Longest transaction: 29.04 //每次传输所花最长时间
Shortest transaction: 0.00 //每次传输所花最短时间
解压: tar -zxvf siege-latest.tar.gz
cd siege-..*
./configure --prefix=/usr/local/siege --mandir=/usr/local/man --with-ssl=/usr/local/ssl
mkdir -p /usr/local/siege/etc
mkdir -p /usr/local/siege/var
make
make install

查看配置文件
/usr/local/siege/bin/siege -C

二、siege的使用
举例说明:

50个用户(每次并发量)重复100次 共产生 50*100 个请求
/usr/local/siege/bin/siege -c 50 -r 100 www.baidu.com

50个用户 重复100次 发送GET参数
/usr/local/siege/bin/siege -c 50 -r 100  http://www.baidu.com/s?wd=siege&rsv_spt=1&issp=1&rsv_bp=0&ie=utf-8&tn=baiduhome_pg&rsv_sug3=4&rsv_sug=2&rsv_sug1=4&rsv_sug4=60

50个用户 重复100次 发送POST参数 (注意引号)
/usr/local/siege/bin/siege -c 50 -r 100  "https://www.abc.com/a.php POST name=zhangsan"

50个用户 重复100次 发送POST参数(从文件中读取)
/usr/local/siege/bin/siege -c 50 -r 100  "https://www.abc.com/a.php POST < /root/ab_test/post.xml"

另外还有挺多参数
详情请man 或 siege -h

siege报表解析,请man查看,暂略(有点累了,不想写了。。。。。)。
Transactions:                     10 hits    :服务器接收的请求数
Availability:                 100.00 %       :有效情况的比例
Elapsed time:                   1.06 secs    :  测试所用的时间
Data transferred:               0.04 MB    :每个模拟用户的数据传输量
Response time:                  0.03 secs    :响应每个模拟用户请求的平均时间
Transaction rate:               9.43 trans/sec    :服务器每秒处理事务的平均数
Throughput:                     0.04 MB/sec    :服务器每秒跟所有模拟用户的数据传输量
Concurrency:                    0.25    :每秒的模拟连接
Successful transactions:          10    :处理成功的事务数(code<400)
Failed transactions:               0    : 处理失败的事务数(code>400)
Longest transaction:            0.04    :最长的事务处理时间
Shortest transaction:           0.02    :最短的事务处理时间

siege -c 200 -r 10 -f example.url
-c是并发量,-r是重复次数。 url文件就是一个文本,每行都是一个url,它会从里面随机访问的。

example.url内容:

http://www.licess.cn
http://www.vpser.net
http://soft.vpser.net

结果说明
Lifting the server siege… done.
Transactions: 3419263 hits //完成419263次处理
Availability: 100.00 % //100.00 % 成功率
Elapsed time: 5999.69 secs //总共用时
Data transferred: 84273.91 MB //共数据传输84273.91 MB
Response time: 0.37 secs //相应用时1.65秒:显示网络连接的速度
Transaction rate: 569.91 trans/sec //均每秒完成 569.91 次处理:表示服务器后
Throughput: 14.05 MB/sec //平均每秒传送数据
Concurrency: 213.42 //实际最高并发数
Successful transactions: 2564081 //成功处理次数
Failed transactions: 11 //失败处理次数
Longest transaction: 29.04 //每次传输所花最长时间
Shortest transaction: 0.00 //每次传输所花最短时间