用 Go 编写的跨平台 HTTP(S) 命令行压测工具,基于 fasthttp 实现高吞吐请求。
six-ddc/plow
基于 Go 的 HTTP(S) 压测命令行工具,提供终端实时显示和 Web 图表。
- Star
- 4,515
- Fork
- 154
- 未关闭 Issue
- 20
- 最近提交
- 5天前
这是什么?
Plow 是一个用 Go 编写的 HTTP(S) 命令行压测工具。它以指定的并发连接数发送请求,在测试过程中实时计算延迟统计、直方图和分位数,并同时输出到终端和实时 Web 页面。测试可以按固定时长、固定请求数运行,也可以按 Ctrl-C 随时中断。
底层使用 fasthttp 客户端库,而不是 Go 标准库的 net/http。直方图和分位数采用流式算法实时计算,内存和 CPU 开销较低。开启追踪后,可以把单个请求的耗时拆分为 DNS、连接、TLS、写入、首字节等待和读取等阶段。
请求可自定义方法、请求头、请求体(支持从文件读取,也可流式发送)和客户端 TLS 证书。工具还支持限速、逐步加压、SOCKS5 和 HTTP 代理、Unix 域套接字以及 JSON 输出。
核心功能
- 01终端和 Web 页面同时实时显示延迟统计、直方图和分位数。
- 02支持固定并发数、固定请求数或固定时长三种测试方式。
- 03可按 DNS、连接、TLS、写入、首字节和读取等阶段追踪延迟。
- 04支持自定义请求方法、请求头、从文件读取请求体及客户端 TLS 证书。
- 05支持限速、逐步加压、SOCKS5 与 HTTP 代理,并可输出 JSON。
适用场景
- 在发布前对 HTTP 接口或 Web 服务进行压力测试。
- 比较不同接口或服务端配置下的响应延迟。
- 定位慢请求主要耗时在 DNS、连接还是首字节等待阶段。
快速上手
- 1
使用 Go 安装 plow
go install github.com/six-ddc/plow@latest - 2
使用 20 个连接对 URL 进行压力测试
plow http://127.0.0.1:8080/ -c 20 -n 10000 -d 10s
使用前须知
- 仅支持 HTTP(S) 压力测试,不支持其他协议。
收录于专题
标签
常见问题
- plow 是什么?
- 基于 Go 的 HTTP(S) 压测命令行工具,提供终端实时显示和 Web 图表。 Plow 是一个用 Go 编写的 HTTP(S) 命令行压测工具。它以指定的并发连接数发送请求,在测试过程中实时计算延迟统计、直方图和分位数,并同时输出到终端和实时 Web 页面。测试可以按固定时长、固定请求数运行,也可以按 Ctrl-C 随时中断。
- plow 可以免费使用吗?用的什么许可证?
- plow 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- plow 还在维护吗?
- 活跃维护中。plow 最近一次提交是在 2026年10月17日。
- plow 适合用来做什么?
- 在发布前对 HTTP 接口或 Web 服务进行压力测试。 比较不同接口或服务端配置下的响应延迟。 定位慢请求主要耗时在 DNS、连接还是首字节等待阶段。
- plow 怎么安装和运行?
- 使用 Go 安装 plow: go install github.com/six-ddc/plow@latest 使用 20 个连接对 URL 进行压力测试: plow http://127.0.0.1:8080/ -c 20 -n 10000 -d 10s
- 在哪里获取 plow?
- 源代码和安装说明在 GitHub 上:https://github.com/six-ddc/plow
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
6843332GoMIT更新于 13天前
开源 Java 应用,用于对 Web 应用及其他服务进行负载测试和性能测量。
95732294JavaApache-2.0更新于 21天前
一款命令行基准测试工具,支持统计分析、预热运行,并可导出为 CSV、JSON、Markdown 等格式。
2.9万533RustApache-2.0更新于 10天前
一个简单、轻量、无依赖的 JavaScript 基准测试库,可在多种 JavaScript 运行时中使用。
238560TypeScriptMIT更新于 7小时前
一款 Rust 性能分析工具,可定位 CPU、内存、异步、SQL、HTTP 和 I/O 瓶颈,并支持导出到 Prometheus 与 Grafana。
189961RustMIT更新于 20小时前
一个可定制的大模型评测框架,覆盖 LLM、VLM 和 AIGC 模型的基准评测与推理性能压测。
3579532PythonApache-2.0更新于 8小时前