wrk
一个用于HTTP负载测试和性能基准测试的命令行工具。
安装使用
复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:
帮我安装这个 AI Skill:wrk。 它的用途是:一个用于HTTP负载测试和性能基准测试的命令行工具。 完整的 Skill 内容见:https://321skill.com/skills/wrk-x-10/raw/index.md 请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。
提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。
使用示例
‘我想用wrk测试一下我们新用户登录接口的性能,模拟100个并发连接,持续压测30秒。’,它会为你生成相应的wrk命令行,并可能提供一个Lua脚本示例,用于在请求体中动态填入不同的测试账号和密码。接着,你可以运行该命令,wrk会输出包括请求延迟分布、每秒请求数(QPS)在内的详细报告,帮助你定位接口性能瓶颈。
介绍
wrk是一个现代化的HTTP基准测试工具,它能够模拟高并发请求,帮助开发者评估Web服务的性能和承载能力。它通过单线程、事件驱动的模型,配合多线程和Lua脚本支持,能够高效地产生大量负载,并生成详细的延迟和吞吐量统计报告。
使用wrk时,您只需在命令行指定目标URL、并发连接数、线程数和测试时长等参数即可启动测试。其核心优势在于支持Lua脚本,允许您自定义请求内容、动态修改请求头(如随机化X-Forwarded-For IP以模拟分布式用户)、处理响应以及实现复杂的测试逻辑,从而进行更贴近真实场景的压力测试。
该工具特别适合后端开发、运维工程师和测试工程师,用于在应用上线前进行压力测试、容量规划,或在系统优化后验证性能提升效果。它轻量、高效,是快速定位接口性能瓶颈的利器。
建议在使用前,先在小流量或测试环境进行,避免对生产服务造成影响。编写Lua脚本时,注意避免无限循环或过于复杂的逻辑,以免影响压测客户端本身的性能。对于需要复杂认证链或状态保持的测试场景,可能需要更深入的脚本编写。
核心特点
与同类HTTP压测工具(如ab)相比,wrk通过单线程+非阻塞I/O模型实现了更高的性能和更低的资源占用,同时其内置的Lua脚本支持允许进行动态、复杂的请求定制(如随机化请求参数和头部),使得测试场景更灵活、更贴近真实业务。
注意事项
不适合测试需要复杂状态保持或依赖特定客户端库(如WebSocket长连接)的协议,其Lua脚本能力也主要围绕HTTP请求/响应周期。
常见问题
wrk能测试HTTPS接口吗?
可以,wrk支持HTTPS,直接使用 https:// 开头的URL即可。
如何用wrk模拟不同的用户IP?
可以通过编写Lua脚本,在request函数中动态设置headers["X-Forwarded-For"]为一个随机IP地址来实现。
给 AI 助手的安装指引
如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:
请访问 https://321skill.com/skills/wrk-x-10/raw/index.md 读取 wrk 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。
AI 可直接读取的原始 Markdown 地址:/skills/wrk-x-10/raw/index.md(查看排版版本)