当前位置: 首页 > news >正文

【wrk】wrk 压测工具入门

1. 简介

wrk 是我无意间发现的一款简单好用的 HTTP 接口性能测试工具,目前在 Github 上已经有 38k 的 star 数了!

⭐ Github地址:https://github.com/wg/wrk

2. 安装

环境要求:

  • windows10 平台
  • 安装过 ubuntu 等 Linux 子系统

在 windows 中通过 bash 进入 linux 环境依次执行以下命令:sudo apt-get install wrk

如上图所示,如果执行wrk命令能看到以下结果证明安装完成!

3. 使用

wrk 工具的使用非常简单:只需要掌握以下这个命令:wrk -t2 -d10s -c100 -s ./script/login.lua http://172.24.0.1:8081/users/login,其中各个参数选项含义如下:

  • -t:启动线程的数量
  • -d:持续时间,比如这里就是10s(也可以指定成1m表示1分钟)
  • -c:并发请求数
  • -s:运行脚本的路径

❗ 注意:如果在 windows 中的 linux 子系统中,直接使用 localhost 访问是不可行的,需要先在 windows cmd 中使用 ipconfig 获取本机ip地址,然后替代 localhost,参考博客:https://blog.csdn.net/qq_41407687/article/details/142172220

测试结果如上图所示:我们可以调整参数寻找最优测试结果

4. 附:Lua 脚本

4.1 signup.lua

wrk.method="POST"
wrk.headers["Content-Type"] = "application/json"

local random = math.random
local function uuid()
  local template ='xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'
  return string.gsub(template, '[xy]', function (c)
      local v = (c == 'x') and random(0, 0xf) or random(8, 0xb)
      return string.format('%x', v)
    end)
end

-- 初始化
function init(args)
  -- 每个线程都有一个 cnt,所以是线程安全的
  cnt = 0
  prefix = uuid()
end

function request()
  body=string.format('{"email":"%s%d@qq.com", "password":"hello#world123", "confirmPassword": "hello#world123"}', prefix, cnt)
  cnt = cnt + 1
  return wrk.format('POST', wrk.path, wrk.headers, body)
end

function response()

end

4.2 login.lua

wrk.method="POST"
wrk.headers["Content-Type"]="application/json"
wrk.body='"{"email": "wjjbangbangbang@163.com","password": "hello#world123"}"'

相关文章:

  • DeepSeek与ChatGPT的对比分析
  • K8s 之端口暴露(The Port of K8s is Exposed)
  • Jmeter连接数据库、逻辑控制器、定时器
  • SOME/IP--协议英文原文讲解8
  • 《魔女的夜宴》无广版手游安卓苹果免费下载直装版
  • 红蓝对抗之常见网络安全事件研判、了解网络安全设备、Webshell入侵检测
  • Mac端homebrew安装配置
  • P1115 最大子段和
  • fps僵尸:8.丧尸死亡
  • 解决 Mac 只显示文件大小,不显示目录大小
  • 图的最小生成树算法: Prim算法和Kruskal算法(C++)
  • EasyRTC:开启智能硬件与全平台互动新时代
  • 01数据准备 抓取图片 通过爬虫方式获取bing的关键词搜索图片
  • 优先队列(典型算法思想)—— OJ例题算法解析思路
  • 撕碎QT面具(6):调节窗口大小后,控件被挤得重叠的解决方法
  • SLT-加载表添加字段重新刷数
  • YOLOv10改进系列 ---- Conv篇 ---- 2024利用 Haar 小波的下采样HWD替换传统下采样
  • 传入一个list map,寻找最大的key和对应的vlaue
  • 快速定位并优化CPU 与 JVM 内存性能瓶颈
  • 黑客入侵动图特效实现
  • 缺字危机:一本书背后有多少“不存在”的汉字?
  • 外媒:初步结果显示,菲律宾前总统杜特尔特当选达沃市市长
  • 福州千余公共道路泊车位装“智能地锁”续:运营公司被责令改正并罚款
  • 江西省市场监管局原局长谢来发被双开:违规接受旅游活动安排
  • 十大券商看后市|A股中枢有望逐步震荡抬升,把握结构性行情
  • 长沙潮宗街内“金丝楠木老屋文旅博物馆”起火:明火已扑灭,无伤亡