前几天工作中要对项目的接口做简单压测,就使用了http load做了简单测试,下面介绍一下这款工具的使用说明。
简介:http_load是基于linux平台的性能测试工具,它体积非常小,仅100KB。它以并行复用的方式运行,可以测试web服务器的吞吐量与负载。
1、下载
wget http://acme.com/software/http_load/http_load-12mar2006.tar.gz
tar xzf http_load-12mar2006.tar.gz
2、安装
cd http_load-12mar2006
make
3、使用方法
参数说明:
-parallel 简写-p :含义是并发的用户进程数。
-rate 简写-r :含义是每秒的访问频率
-fetches 简写-f :含义是总计的访问次数
-seconds简写-s :含义是总计的访问时间
选择参数时,-parallel和-rate选其中一个,-fetches和-seconds选其中一个。
应用场景1:测试吞吐量
cd http_load-12mar2006/
./http_load -p 10 -s 10 url.txt
测试网站每秒所能承受的平均访问量(吞吐量, 单位时间内的事物处理能力)
这段命令行是同时使用10个进程,随机访问url.txt中的网址列表,总共访问10秒。
./http_load -rate 50 -f 5000 urls.txt
每秒请求50次,总共请求5000次停止。
应用场景2:测试QPS
测试QPS:QPS(TPS)= 并发数/平均响应时间
./http_load -p 10 -s 10 url.txt
测试网站是否能承受住预期的访问压力(大量用户并发访问, 持续一段时间,负载测试)
./http_load -rate 2 -seconds 300 url.txt
在300秒内保持一定的频率访问目标url。
结果分析:
1000 fetches, 5 max parallel, 6e+06 bytes, in 58.1026 seconds
6000 mean bytes/connection
17.2109 fetches/sec, 103266 bytes/sec
msecs/connect: 0.403263 mean, 68.603 max, 0.194 min
msecs/first-response: 284.133 mean, 5410.13 max, 55.735 min
HTTP response codes:
code 200 — 1000
17.2109 fetches/sec 即吞吐量,QPS。
msecs/connect: 0.403263 mean 平均响应时间
这两个是我们关注的主要指标。