ab仅适合快速冒烟测试或接口基线对比,因其不支持动态参数、登录态、复杂业务流,且受限于单进程同步I/O、文件描述符限制、无SNI支持及无法维持独立会话。
ab(Apache Bench)能快速发起 HTTP 并发请求,但它不是通用压力测试工具,也不支持动态参数、登录态或复杂业务流——别指望靠它测出真实服务瓶颈。
ab 命令基础用法与关键参数
最常用形式是 ab -n 1000 -c 100 http://example.com/:发送 1000 个总请求数,最大并发 100。注意 -n 是总数,不是每秒;-c 是并发连接数,不是线程数。
-
-k启用 HTTP Keep-Alive,避免反复建连,更贴近真实浏览器行为 -
-H "Authorization: Bearer xxx"可加请求头,但无法自动刷新 token -
-p file.txt发送 POST 数据,文件内容需是原始 body(不含 multipart boundary) -
-T "application/json"配合-p设置 Content-Type
ab 测试结果里哪些字段真有用
输出中真正值得关注的是:Time per request (mean)(平均延迟)、Requests per second(吞吐量)、Failed requests(失败数)。注意两个 Time per request:带 (mean, across all concurrent requests) 的才是单请求平均耗时;另一个是每个并发组的均值,容易误读。