GGitHub 趋势观察站
每日 07:00 更新
← 返回今日榜单

rakyll /

hey

按并发数或时长向 HTTP 服务发送请求并统计结果的轻量压测工具。

访问 GitHub 仓库 ↗
最近上榜 · 2026-09-30#14

当日排名

+31当日新增 Star20,460总 Star

hey:用简洁命令对 HTTP 服务进行并发负载测试

一分钟看懂

hey 是一个用 Go 编写的小型 HTTP 负载生成器,可作为 ApacheBench 的替代工具。它按指定请求总数、并发数或持续时间向 Web 服务发出请求,并汇总响应时间和吞吐等统计结果。

你可以用它做什么

  • 快速检查 Web 接口在一定并发量下的响应表现。
  • 按固定请求数或固定持续时间运行压测。
  • 限制每个并发工作器的每秒查询速率。
  • 测试 GET、POST、PUT、DELETE、HEAD、OPTIONS 和 HTTP/2 端点。
  • 添加请求头、请求体、基本认证或代理设置。

主要能力

  • 通过 -n 和 -c 控制请求总量与并发工作器数量。
  • 通过 -z 按持续时间运行,通过 -q 控制速率。
  • 支持自定义方法、请求头、正文、超时和 Host。
  • 默认输出统计摘要,也可输出 CSV 形式的响应指标。

适合哪些人

适合需要从命令行快速验证 HTTP 服务性能的后端开发者、测试人员和运维工程师。它更适合单机、单目标的轻量测试,不替代复杂分布式压测、完整业务链路模拟或容量规划平台。

怎么开始使用

可从官方 README 提供的 Linux、macOS 或 Windows 二进制链接下载安装;macOS 也可使用 Homebrew。最简单的命令是 hey https://example.com,再根据需要增加请求数、并发数、持续时间和请求参数。

使用前需要知道

负载测试会给目标服务带来真实流量和资源压力,只应对自己拥有或明确获准测试的系统使用。单机结果会受到客户端 CPU、网络和连接限制影响,不能直接等同于生产容量。项目采用 Apache-2.0 许可证。

官方资料