siege 压测工具

简介

siege 是一款高性能的 http 压力测试工具。
siege 支持身份验证、 cookies、 http、 https 和 ftp 协议。

应用举例

1. 对指定站点进行压测

siege -c 300 -t 5s URL

2.文件中包含的若干URL进行批量测试

siege -c 300 -t 5s -f URL_File_Name

3. 支持多个Header参数

siege -c 300 -t 5s -H "Authorization: XXXX" -H "SX: 1212" URL

4. 支持application/json方式请求

siege -c 300 -t 5s 'URL POST < data.json'
siege -c 300 -t 5s 'URL PUT < data.json'

常用参数

参数描述
-c并发数
-t压力测试时间,可以在时间后加单位
-r重复次数。与-t含义相同,设一个即可
-f包含URL的文本名字
-bBENCHMARK模式,请求之间无需延迟
-p打印整个页面的内容
-H给请求添加头,支持多个
-A给请求设置User-Agent
-T给请求设置Content-Type

性能参数

性能参数描述
Transactions总共测试次数
Availability成功次数百分比
Elapsed time总共耗时多少秒
Data transferred总共数据传输
Response time等到响应耗时
Transaction rate平均每秒处理请求数
Throughput吞吐率
Concurrency最高并发
Successful transactions成功的请求数
Failed transactions失败的请求数

参考资料