云网牛站
所在位置:首页 > Linux常用命令大全 > 更多实用命令 > siege命令

siege命令

siege是Linux系统下的一个测试工具,完全使用C语言实现,可以对http和ftp服务器进行负载和性能测试。设计用于评估WEB应用在压力下的承受能力。可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。

参数

-C,或-config 在屏幕上打印显示出当前的配置,配置是包括在他的配置文件$HOME/.siegerc 中,可以编辑里面的参数,这样每次siege 都会按照它运行.
-v 运行时能看到详细的运行信息
-c n,或-concurrent=n 模拟有n个用户在同时访问,n不要设得太大,因为越大,siege 消耗本地机器的资源越多
-i,-internet 随机访问urls.txt中的url列表项,以此模拟真实的访问情况(随机性),当 urls.txt存在是有效
-d n,-delay=n hit每个url之间的延迟,在0-n之间
-r n,-reps=n 重复运行测试n次,不能与 -t同时存在
-t n,-time=n 持续运行siege ‘n’秒(如10S),分钟(10M),小时(10H)
-l 运行结束,将统计数据保存到日志文件中siege .log,一般位于/usr/local/var/siege  .log中,也可在.siegerc中自定义
-R SIEGERC,-rc=SIEGERC 指定用特定的siege 配置文件来运行,默认的为$HOME/.siegerc
-f FILE, -file=FILE 指定用特定的urls文件运行siege ,默认为urls.txt,位于siege 安装目录下的etc/urls.txt
-u URL,-url=URL 测试指定的一个URL,对它进行”siege “,此选项会忽略有关urls文件的设定

实例

1,模拟500个用户,重复50次请求

# siege -c 500 -r 50 -f url.txt

说明:-c是并发量,-r是重复次数。url.txt就是一个文本文件,每行都是一个url,它会从 里面随机访问的。

2,模拟500个用户连续请求10分钟

# siege -c 500 -t10M -u http://192.168.10.203

使用500个用户并发访问,持续10分钟进行测试,注意:”-t10M”之间没有空格

3,50个用户 重复100次 发送POST参数 (注意引号)

# iege -c 50 -r 100  "https://192.168.10.203/test.php POST name=test"

Transactions:                  28759 hits         #完成28759次处理
Availability:                  94.97 %		  #94.97 % 成功率
Elapsed time:                  33.58 secs         #耗时33.58秒
Data transferred:              46.84 MB           #传输数据46.84M
Response time:                  0.04 secs         #响应时间0.04秒
Transaction rate:             856.43 trans/sec    #平均每秒完成856.43次处理,也就是QPS
Throughput:                     1.40 MB/sec       #平均每秒传送数据
Concurrency:                   35.48              #实际最高并发连接数
Successful transactions:       28759              #成功处理次数
Failed transactions:            1523              #失败处理次数
Longest transaction:            7.05              #请求响应最长时间
Shortest transaction:           0.00              #请求响应最短时间

相关命令