siege压测工具的安装与使用

转载:http://www.cxyteam.com/2015/12/17/siege%E5%8E%8B%E6%B5%8B%E5%B7%A5%E5%85%B7%E7%9A%84%E5%AE%89%E8%A3%85%E4%B8%8E%E4%BD%BF%E7%94%A8/

siege的安装

wget http://soft.vpser.net/test/siege/siege-2.67.tar.gz (` 国内的一个镜像站地址 `)tar -zxvf siege-2.67.tar.gz
cd siege-2.67./configure && make && make install/usr/local/bin/siege --help

官网的下载地址(我下载的时候连接超时)
siege,github地址

siege的使用

50个用户(每次并发量,注意不是每秒并发量) 重复100次 共产生 50 * 100 = 5000个请求
/usr/local/bin/siege -c 50 -r 100  hostname/path50个用户 重复100次 发送GET参数
/usr/local/bin/siege -c 50 -r 100  hostname/path?name=zhangsan50个用户 重复100次 发送POST参数 (注意引号)
/usr/local/bin/siege -c 50 -r 100  "hostname/path POST name=zhangsan"50个用户 重复100次 发送POST参数(从文件中读取)
/usr/local/bin/siege -c 50 -r 100  "hostname/path POST < /tmp/post.xml"压测多个地址
siege -c 200 -r 10 -f url.txt
url.txt的内容是:    hostname/path
    hostname/path
    hostname/path

siege命令结果分析

Transactions:                    100 hits (完成100个请求)
Availability:                    100.00 %(*100%的成功率*)
Elapsed time:                    10.97 secs(*总共使用时间*)
Data transferred:                0.54 MB(*总共传输数据*)
Response time:                    0.17 secs(*响应时间*)
Transaction rate:                9.12 trans/sec(*平均每秒完成的处理*)
Throughput:                        0.05 MB/sec(*平均每秒传送的数据*)
Concurrency:                    1.58(*实际最高并发数*)
Successful transactions:        100(*成功处理次数*)
Failed transactions:            0(*失败处理次数*)
Longest transaction:            3.09(*每次传输花费的最长时间*)
Shortest transaction:            0.03(*每次传输花费的最短时间*)

siege参数说明

Usage: siege [options]
       siege [options] URL
       siege -g URL
Options:
  -V, --version           (*版本信息*)
  -h, --help              (*帮助信息*)  
  -C, --config            (*显示配置*) 
  -v, --verbose           (*运行时能看到详细的运行信息*)  
  -g, --get               GET, pull down headers from the server and display HTTP                          transaction. Great for web application debugging.
  -c, --concurrent=NUM    (*一次请求的并发数目*)  
  -i, --internet          (*随机模拟用户点击*)  
  -b, --benchmark         (*基准测试,设置这个参数默认延迟时间为0*)  
  -t, --time=NUMm         (*设置测试的时间比如--time=1H, 测试时间一个小时*)  
  -r, --reps=NUM          (*压测次数*)  
  -f, --file=FILE         (*指定任务文件*)  
  -R, --rc=FILE           (*修改siegerc的文件位置,覆盖SIEGERC的环境变量*)  
  -l, --log               (*运行完之后的结果log位置*)  
  -m, --mark="text"       (*利用分隔符标记文件*)  
  -d, --delay=NUM         (*每次压测延迟的时间*)  
  -H, --header="text"     (*添加一个header头请求消息*)  
  -A, --user-agent="text" (*设置User-Agent*)


 

siege -c 100 -r 100 -H "Cookie:TOKEN=Rx4%252BJrDS0b4lY5bRRj6hA2WKNeuosn%252FyojtOBPoYUIVY9vgq3KOnjJ2nEZ3FVuf9v1" http://www.xxx.com/api/account/

Posted by SunnySmilez - 2015-12-17

如需转载,请注明: 本文来自 zhouxiaozhi'blog


你可能感兴趣的:(压测工具)