wrk

一个用于HTTP负载测试和性能基准测试的命令行工具。

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:wrk。
它的用途是:一个用于HTTP负载测试和性能基准测试的命令行工具。
完整的 Skill 内容见:https://321skill.com/skills/wrk/raw/index.md
请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。

提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。

使用示例

‘我想用wrk测试一下我的API接口在100个并发连接下的QPS,持续30秒。’,它会生成相应的wrk命令行。或者

对AI说:‘我需要一个Lua脚本,让每次请求的X-Forwarded-For头部使用一个随机的中国IP地址。’,它会提供一个可用的脚本示例,帮助你模拟分布式用户的请求。

介绍

wrk是一个现代化的HTTP基准测试工具,它能够模拟高并发请求,帮助开发者评估Web服务的性能极限和稳定性。它通过单线程、事件驱动的架构,配合多线程连接池,能够以极低的系统开销产生巨大的负载,是进行压力测试和容量规划的得力助手。

使用wrk时,您只需通过命令行指定目标URL、并发连接数、持续时间和线程数等参数即可启动测试。其强大之处在于支持Lua脚本,允许您自定义请求内容、动态修改请求头(例如随机化X-Forwarded-For IP以模拟分布式用户)、处理响应数据以及实现复杂的测试逻辑,从而创建更贴近真实场景的负载模型。

这个工具非常适合后端开发、运维工程师和测试工程师,用于在应用上线前进行压力测试,排查性能瓶颈,验证系统在高并发下的表现,或者对比不同版本、不同配置下的性能差异。

使用建议:建议从低并发开始逐步增加负载,观察系统指标变化。编写Lua脚本时,注意避免脚本本身的性能开销影响测试结果。由于wrk主要针对HTTP/1.1,测试HTTP/2或WebSocket等协议需要额外处理或选择其他工具。

核心特点

与Apache Bench (ab) 等工具相比,wrk支持通过Lua脚本实现高度定制化的请求生成和响应处理,能够模拟更复杂的用户行为;同时,其基于多路复用的设计使其在单机下能产生更高的并发压力,资源利用率更优。

注意事项

不适合测试非HTTP协议(如gRPC、原始TCP)或需要复杂图形化报告和分析的场景。

常见问题

wrk能测试HTTPS接口吗?

可以,wrk支持HTTPS,在URL中使用https://前缀即可。

如何用wrk模拟不同的用户请求?

通过编写Lua脚本,可以动态生成不同的请求路径、参数和头部信息,例如随机化用户ID或IP地址。

给 AI 助手的安装指引

如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:

请访问 https://321skill.com/skills/wrk/raw/index.md 读取 wrk 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。