WEB压力测试工具Siege

绍:

Siege是一个http/https负载测试和基准测试工具。它旨在让WEB开发人员了解自己代码在压力测试中的执行性能。


Siege支持基本身份验证、Coockie、HTTP、HTTPS和FTP协议。用户也可以通过配置来模拟访问服务器的并发用户数,是一款非常方便的压力测试工具。

官方网址:http://www.joedog.org/下载网址:http://www.joedog.org/pub/siege/
安装配置
安装版本:Siege-4.0.2操作系统:Centos7.x

1、安装:

shell> yum install siege -y

2、使用介绍:

shell> siege -VSIEGE 4.0.2
shell> siege --help
-C, --config :查看siege当前的配置信息-V, --version:版权说明信息-c, --concurrent=NUM:并行启动(访问)用户数,默认是10-t, --time=NUMm:压力测试时间,比如-t5表示持续时间是5分钟-b, --benchmark:基准测试,请求之间没有延迟。-g, --get get方式请求-d, --delay=NUM 时间延迟,每个请求之间的延迟时间-i, --internet 模拟用户,随机点击的URL。-r, --reps=NUM:每个连接发出的请求数量,这个与t有些类似,所以设置了这个值就不需要设置t了,反之亦然。-f, --file=FILE:对应一个文件,这个文件里每一行为一个URL链接,格式如:-m, --mark="text"  在日志里标记的字符串标识-H, --header="text" 在Header里增加的字符串标识-A, --user-agent="text" 在user-agent里增加的字符串标识-u, --url="URL"     设置被测Web的URL

3、举个例子:

# 10个并发,每个连接10个请求,间隔1秒请求压测。shell> siege  -u www.baidu.com -d1 -r10 -c 10
# 结果:HTTP/1.1 200     0.05 secs:  143913 bytes ==> GET  /static/superman/js/lib/jquery-1-cc52697ab1.10.2.jsHTTP/1.1 200     0.04 secs:   15629 bytes ==> GET  /5eN1bjq8AAUYm2zgoY3K/r/www/cache/bdorz/baidu.min.cssHTTP/1.1 200     0.05 secs:  163321 bytes ==> GET  /HTTP/1.1 200     0.02 secs:   93750 bytes ==> GET  /r/www/cache/static/jquery/jquery-1.10.2.min_65682a2.jsHTTP/1.1 200     0.05 secs:    6511 bytes ==> GET  /img/baidu_resultlogo@2.pngHTTP/1.1 200     0.02 secs:    1131 bytes ==> GET  /baidu.html?from=noscriptHTTP/1.1 200     0.01 secs:     705 bytes ==> GET  /img/baidu_jgylogo3.gifHTTP/1.1 200     0.04 secs:    6511 bytes ==> GET  /img/baidu_resultlogo@2.pngHTTP/1.1 200     0.01 secs:     705 bytes ==> GET  /img/baidu_jgylogo3.gifHTTP/1.1 200     0.04 secs:    7877 bytes ==> GET  /img/bd_logo1.png?qua=highHTTP/1.1 200     0.01 secs:    7877 bytes ==> GET  /img/bd_logo1.png?qua=highHTTP/1.1 200     0.02 secs:    7877 bytes ==> GET  /img/bd_logo1.pngHTTP/1.1 200     0.04 secs:    7877 bytes ==> GET  /img/bd_logo1.pngHTTP/1.1 200     0.10 secs:      91 bytes ==> GET  /img/gs.gifHTTP/1.1 200     0.03 secs:   15629 bytes ==> GET  /5eN1bjq8AAUYm2zgoY3K/r/www/cache/bdorz/baidu.min.cssHTTP/1.1 200     0.06 secs:   93750 bytes ==> GET  /r/www/cache/static/jquery/jquery-1.10.2.min_65682a2.jsHTTP/1.1 200     0.01 secs:    6511 bytes ==> GET  /img/baidu_resultlogo@2.pngHTTP/1.1 200     0.01 secs:     705 bytes ==> GET  /img/baidu_jgylogo3.gifHTTP/1.1 200     0.05 secs:    7877 bytes ==> GET  /img/bd_logo1.png?qua=highHTTP/1.1 200     0.01 secs:    7877 bytes ==> GET  /img/bd_logo1.pngHTTP/1.1 200     0.02 secs:  163294 bytes ==> GET  /HTTP/1.1 200     0.04 secs:    1131 bytes ==> GET  /baidu.html?from=noscriptHTTP/1.1 200     0.01 secs:      91 bytes ==> GET  /img/gs.gifHTTP/1.1 200     0.03 secs:   15629 bytes ==> GET  /5eN1bjq8AAUYm2zgoY3K/r/www/cache/bdorz/baidu.min.cssHTTP/1.1 200     0.06 secs:   93750 bytes ==> GET  /r/www/cache/static/jquery/jquery-1.10.2.min_65682a2.jsHTTP/1.1 200     0.02 secs:    6511 bytes ==> GET  /img/baidu_resultlogo@2.pngHTTP/1.1 200     0.01 secs:     705 bytes ==> GET  /img/baidu_jgylogo3.gifHTTP/1.1 200     0.05 secs:    7877 bytes ==> GET  /img/bd_logo1.png?qua=highHTTP/1.1 200     0.00 secs:    7877 bytes ==> GET  /img/bd_logo1.png
Transactions:            1017 hits  // 总处理数量Availability:          100.00 %    // 成功请求百分百Elapsed time:           10.06 secs //总耗时Data transferred:         35.65 MB //总传输数据量Response time:            0.03 secs  // 响应时间Transaction rate:        101.09 trans/sec // 每秒处理请求数Throughput:            3.54 MB/sec     // 吞吐量Concurrency:            3.38           // 并发数Successful transactions:        1017   //成功处理次数Failed transactions:             0    //请求失败数Longest transaction:          0.33   // 请求最长耗时Shortest transaction:          0.00  //请求最短耗时

4、GET方式压测

shll> siege -g www.baidu.com
HEAD / HTTP/1.0Host: www.baidu.comAccept: */*User-Agent: Mozilla/5.0 (redhat-x86_64-linux-gnu) Siege/4.0.2Connection: close

HTTP/1.0 200 OKAccept-Ranges: bytesCache-Control: private, no-cache, no-store, proxy-revalidate, no-transformContent-Length: 277Content-Type: text/htmlDate: Sun, 01 Mar 2020 13:25:22 GMTEtag: "575e1f60-115"Last-Modified: Mon, 13 Jun 2016 02:50:08 GMTPragma: no-cacheServer: bfe/1.0.8.18


Transactions:               1 hitsAvailability:          100.00 %Elapsed time:            0.52 secsData transferred:          0.00 MBResponse time:            0.05 secsTransaction rate:          1.92 trans/secThroughput:            0.00 MB/secConcurrency:            0.10Successful transactions:           1Failed transactions:             0Longest transaction:          0.05Shortest transaction:          0.05


上一篇:「作者推荐」【JVM性能优化】对象内存分配之虚拟机参数调优分析


下一篇:《Java架构师的最佳实践》生产环境JVM调优之空间分配担保失败引起的FullGC