简单易用的Web压测工具——Siege

        今天突然想测一下一个Web应用程序的性能,本来想用WebBench,但发现其并不支持POST方法的压测,故而只能放弃。经过一番搜索,发现另一个和WebBench一样简单易用的压测工具——Siege。
        软件主页是https://www.joedog.org/,可以自己下载源码编译安装,也可以用Linux系统上的包管理工具安装。
        下表是部分参数的中文描述1

ParameterDescription
-C或-config在屏幕上打印显示出当前的配置,配置是包括在他的配置文$HOME/.siegerc中,可以编辑里面的参数,这样每次siege 都会按照它运行.
-v输出版本信息和siege一些命令
-c n或-concurrent=n模拟n个用户同时并发访问;n不要设置的太大,因为越大,siege消耗的资源就更多
-i 或 -internet随机访问urls.txt中的url列表项,以此模拟真实的访问情况(随机性)
-d n 或 -delay=nhit每个url之间访问的延迟,在0-n之间;一般该参数不会>10
-b 或 --benchmarkBENCHMARK模式,请求之间没有延迟
-r n 或 -reps=n重复运行测试n次,不能与-t同时设置
-t n 或 -time=n持续运行siege n秒,如10S(秒),10M(分钟),10H(小时)
-l运行结束,将统计数据保存到日志文件中siege.log,可通过siege -C查看siege.log的具体位置,也可在配置文件中自定义
-R SIEGERC 或 -rc=SIEGERC指定用特定的siege配置文件来运行,默认为$HOME/.siegerc
-f file 或 -file=FILE指定urls文件来运行
-u URL 或 -url=URL测试指定的url

        报告的测试数据如下2

名称说明
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(每次传输花费的最短时间)

        附上实际测试使用的命令:34

  • siege -c 100 -t 50S "http://192.168.50.87:8080/json POST < ./query.json"(注意json文件中的内容不能是普通的字符串)
  • siege -c 100 -t 50S "http://192.168.50.87:8080/json POST {\"key\": \"value\"}"(注意对双引号进行转义)
  • siege -c 100 -t 50S "http://192.168.50.87:8080/json POST p1=v1&p2=v2"

  1. 《压测工具siege的简单使用》https://www.jianshu.com/p/516463003fdc ↩︎

  2. 《siege压测工具的安装与使用》http://blog.51cto.com/mengphilip/1725787 ↩︎

  3. 《如何使用web api测试工具siege和ab的post方法来发送json数据》https://blog.csdn.net/xuriwuyun/article/details/12711927 ↩︎

  4. 《Web性能压力测试工具——Siege详解》https://blog.csdn.net/winsonyuan/article/details/52786368 ↩︎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值