ab 压力测试

2019-11-14  本文已影响0人  癞痢头

使用ab 简单测试接口的请求响应时间

time curl http://baidu.com/token
time curl -X POST \
  https://clt.zljgp.com/v1/ctl/event \
  -H 'Authorization: Bearer nGghqstuEN1JxudKZ7z3jqFG21m6Lmiqz_vDazhe49U' \
  -H 'Content-Type: application/json' \
  -d '{
    "trace_id":"4665904222556160",
    "time": "2019-11-14T10:05:33+08:00"
}'
ab -n 1000 -c 10 curl http://baidu.com/token  // 总数1000 ,并发10 
//  使用 post 数据, 总数10000, 并发100
ab -n 10000 -c 100  -p "post.txt" -T "application/json" -H "Content-Type: application/json" "https://clt.zljgp.com/v1/ctl/event"

// post.txt 
{
    "trace_id":"4665904222556160",
    "time": "2019-11-14T10:05:33+08:00"
}
yum -y install httpd-tools
ab -h

语法 : ab [options] [http[s]://]hostname[:port]/path
选择如下:
-n requests 请求总次数
-c concurrency 并发次数
-t timelimit 基准测试最大秒数, 这意味着 -n 为 50000
-s timeout 每个请求超时时间 , 默认30s
-p postfile post 请求数据【文件路径】. 必须使用 -T 参数
-u putfile put 请求数据【文件路径】. 必须使用 -T 参数
-T content-type http 的contentType 'application/json' 默认'text/plain'
-v verbosity 显示过程
-w 使用html table 显示结果
-i head 请求
-C attribute 添加 cookie, eg. 'Apache=1234'. 可多条
-H attribute 添加 http header
-A attribute auth 验证
-P attribute 代理auth 验证
-X proxy:port 代理服务设置
-k Use HTTP KeepAlive feature
-d Do not show percentiles served table.
-S Do not show confidence estimators and warnings.
-q Do not show progress when doing more than 150 requests
-l Accept variable document length (use this for dynamic pages)
-g filename 结果输出到文件(以 gnuplot 格式).
-e filename 结果输出到文件 (以csv形式).

上一篇下一篇

猜你喜欢

热点阅读