📝 介绍

wrk 是一个用于对 HTTP 服务进行压力测试的开源工具。它可以模拟多个并发连接,向指定的 URL 发送请求,并且测量服务器的响应时间和性能。
在GitHub:https://github.com/wg/wrk 上的star数还是很多的。
notion image

🤗 命令行选项说明

📎 安装

wrk 是C语音编写的,可以下载源码到本地用编译器编译出本平台的执行文件。
安装完后就可以正常使用了

🎧 使用

本地简单起个web服务器用来模拟测试的服务器,用Python,Nginx,Java都行。
对于简单GET请求,直接使用以下命令来测试。输出结果的一些含义说明,备注在了对应行中。
对于稍微复杂一些的请求压测,就需要编写自定义的lua脚本来模拟不同的请求模式和逻辑了,下面列举几个常用的lua脚本。

简单的POST请求

带有动态表单数据的 POST 请求

随机header信息示例

GET 请求随机参数

 
除了上面这些常用来测试业务接口的场景,更多的使用示例可以参考官方的示例:https://github.com/wg/wrk/tree/master/scripts
 
下面是wrk官方对于lua支持的一些说明,在一些进阶的压测场景需要有所了解,才能写出合适的脚本 https://github.com/wg/wrk/blob/master/SCRIPTING
Lua 脚本在压测时的全局变量
Lua 脚本的生命周期钩子
【2023-11-23】亲测有效,记录Chatgpt开通ChatGPT Plus几款MQTT GUI客户端记录
Loading...