简述使用 ApacheBench
进行压力测试。
简单测试
ab -n 100 -c 10 http://localhost/test/index.html
# 并行数为 10
# 共进行100次请求
可以发起简单的 get 请求.
复杂测试
ab -n 5000 -c 1000 -p json_file -T 'application/json' 'http://localhost/webService/'
# 并行数为 1000
# 共进行 5000 次请求
# 请求类型为 `application/json`
# 请求 json 内容从文件 json_file 中读取
可以设定不同类型的 http header, 如 application/x-www-form-urlencoded
.
比如模拟 post 提交表单, 上传文件等等.
测试结果分析
压测命令:ab -n 20000 -c 400 dest_url
结果判定:
Concurrency Level
表示并发数量,这里要求达到 400Requests per second
表示QPS
,要求大于 1500Time per request
表示响应时间,要求小于 200ms。
达到以上要求即可判定为压测合格。