Wrk安装、使用和压测

💡 原文中文,约2400字,阅读约需6分钟。
📝

内容提要

Wrk是一款强大的HTTP性能测试工具,基于C编写,但对Windows支持不友好。可以通过在测试连接的http标识改成https来测试HTTPS,但需要解决证书问题。可以通过修改Hosts文件来解决。如果不想安装且在Windows下运行,可以选择使用bombardier工具。BeetleX提供了可视化压测工具,支持各种测试功能。

🔎

延伸解读

Wrk 的跨平台局限与替代选择

文章指出 Wrk 基于 C 编写,性能强悍,但对 Windows 支持不友好,因此作者在 Ubuntu 下进行安装和使用。如果读者需要在 Windows 环境快速测试,又不想经历编译安装过程,可以考虑 bombardier,它提供单个可执行文件,支持 Linux 和 Windows,同样支持 HTTPS。虽然 bombardier 在高压下不如 Wrk,但对多数应用服务已足够。

HTTPS 测试中的证书处理实践

测试 HTTPS 时,Wrk 会验证证书和连接相关性,不匹配则无法测试。文章提到可通过 Lua 脚本设置 wrk.verify_ssl = false 来忽略证书错误,但作者实际未测试成功。作者最终通过修改 /etc/hosts 文件,将测试域名指向本地地址来解决。这提示读者,在测试环境可优先考虑 hosts 绑定方式,避免证书验证带来的干扰。

压测结果的核心关注点

文章示例中,Wrk 输出包含延迟、每秒请求数等统计,但作者强调最关心的是 Requests/sec,即每秒请求响应数。这提醒读者,在性能测试中应聚焦于系统吞吐能力,而非仅看平均延迟。同时,测试命令中的连接数、线程数和时长需根据实际场景调整,以模拟真实负载。

可视化压测工具的补充价值

除了命令行工具,文章还提到 BeetleX 提供的可视化压测工具,支持用例管理、可变参数函数和文件提交等功能,并提供了下载链接。对于不熟悉命令行或需要更直观操作的用户,这类工具可以降低使用门槛,方便管理测试用例和查看结果。

❓

Q&A

Wrk是什么工具,它的主要功能是什么?

Wrk是一款基于C编写的HTTP性能测试工具,主要用于测试HTTP和HTTPS的性能。

如何在Ubuntu上安装Wrk?

在Ubuntu上安装Wrk需要更新系统,安装相关工具,然后使用git克隆代码并编译安装。

如何解决Wrk测试HTTPS时的证书问题?

可以通过修改Hosts文件或使用lua脚本来解决Wrk测试HTTPS时的证书验证问题。

如果不想安装Wrk,有什么替代工具?

可以选择bombardier工具,它是一个单文件免安装的HTTP性能测试工具,支持HTTPS。

BeetleX提供了哪些功能?

BeetleX提供了可视化压测工具,支持用例管理和多种测试功能。

Wrk的测试结果中,Requests/sec代表什么?

Requests/sec表示每秒的请求响应数,是评估性能测试结果的重要指标。

➡️

继续阅读