简介:
Siege是linux下的一个web系统的压力测试工具,支持多链接,支持get和post请求,可以对web系统进行多并发下持续请求的压力测试。
安装:
wget http://www.joedog.org/pub/siege/siege-lastest.tar.gz
tar -xzvf siege-lastest.tar.gz
./configure
make
make install
自动创建siegec.conf配置文件到当前用户的家目录下/usr/local/siege/bin/siege.conf
在/usr/local/bin目录下会生成siege
验证siege -V,显示版本号SIEGE 4.0.4
输入参数:
-c 200 指定并发数200
-r 5 指定测试的次数5
-f urls.txt 制定url的文件
-i internet系统,随机发送url
-b 请求无需等待 delay=0
-t 5持续测试5分钟
#-r和-t一般不同时使用
命令举例:
200个并发对http://www.baidu.com发送请求100次
siege -c 200 -r 100www.baidu.com
在urls.txt中列出所有网址
siege -c 200 -r 100 -f urls.txt
随机选取urls.txt中列出所有的网址
siege -c 200 -r 100 -f urls.txt -i
delay=0,更精准的压力测试,而不是功能测试
siege -c 200 -r 100 -f urls.txt -i -b
指定http请求头,文档类型
siege -H "Content-Type:application/json"
-c 200 -r 100 -f urls.txt -i -b
输出结果说明:
Transaction:访问次数
Availability:成功次数百分比
Elapsed time:测试用时
Data transferred:总共数据传输
Response time:平均响应时间
Transaction rate:平均每秒处理请求数
Throughput:吞吐量
Concurrency:并发用户数
Successful transactions:成功的请求数
Failed transactions:失败的请求数
Longest transaction:最长响应时间
Shortest transaction:最短响应时间
siege使用的一些总结:
1.发送post请求时,url格式为:
http:www.xxx.com/ POST p1=v1&p2=v2
siege "http://118.212.149.xx:8080/xx/xx/xx POST {\"accountId\":\"123\",\"platform\":\"ios\"}" -r 10 -c 200
2.如果url中包含空格和中文,要先进行url编码,否则siege发送的请求url不准确
siege -C 可以查看相关的配置参数,可以自行修改,比如是否显示log,超时时间