【测试工具】01_wrk基本用法

开发环境

  • CentOS Linux release 7.6.1810 (Core)
  • gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
  • wrk 4.2.0 [epoll] Copyright (C) 2012 Will Glozer

安装步骤

yum install -y git
git clone https://github.com/wg/wrk.git
cd wrk
make
cp wrk /usr/local/bin

基本概念

笔者理解的wrk是一款适用于开发人员使用的性能测试工具,安装方便易于使用。
wrk具体参数信息,参看Github
wrk线程与连接数量用法,查看这里

使用案例

  1. GET请求案例
    wrk -t8 -c200 -d30s --latency http://www.bing.com
Running 30s test @ http://www.bing.com (压测时间30s)
  8 threads and 200 connections (共8个测试线程,200个连接)
  Thread Stats   Avg      Stdev     Max   +/- Stdev
              (平均值) (标准差)(最大值)(正负一个标准差所占比例)
    Latency    46.67ms  215.38ms   1.67s    95.59%
    (延迟)
    Req/Sec     7.91k     1.15k   10.26k    70.77%
    (处理中的请求数)
  Latency Distribution (延迟分布)
     50%    2.93ms
     75%    3.78ms
     90%    4.73ms
     99%    1.35s (99分位的延迟)
  1790465 requests in 30.01s, 684.08MB read (30.01秒内共处理完成了1790465个请求,读取了684.08MB数据)
Requests/sec:  59658.29 (平均每秒处理完成59658.29个请求)
Transfer/sec:     22.79MB (平均每秒读取数据22.79MB)
  1. POST请求插入数据案例
    wrk -t50 -c50 -d10s -s xx.lua --latency http://localhost:9095/deviceTypeInfo/create
wrk.method = "POST"
wrk.headers["Content-Type"] = "application/json"
wrk.headers["Accept"] = "application/json"
wrk.headers["token"] = "e4c29ab78bffabab12d6e8e9b2ee73d6"
local cnt = 0
cnt = cnt +1
function request()
    local body = '{"deviceTypeName": "string%s","deviceTypeNameCn":"string%s"}'
    body = string.format(body, cnt, cnt)
    return wrk.format(nil, nil, nil, body)
end
  1. 发送POST请求查询数据案例
    wrk -t1 -c1 -d30s -s xx.lua --latency http://localhost:9095/list
wrk.method = "POST"
wrk.headers["Content-Type"] = "application/json"
wrk.headers["Accept"] = "application/json"
wrk.headers["token"] = "04a29fab3b5f55781fbdca56b90f9d88"
wrk.headers["requestHeaderMap"] = "{\"yyId\":\"cf3cf97889744922beec2c25c98132c8\",\"xxId\":\"e83bd1e7d00c4b46b714403cf7dbc4b5\",\"xxType\":\"10\"}"

function request()
    local body = '{}'
    body = string.format(body)
    return wrk.format(nil, nil, nil, body)
end

引用

  • https://github.com/wg/wrk
  • https://juejin.cn/post/6844904094054744072
  • https://www.cnblogs.com/liulinghua90/p/9257548.html
  • https://k6.io/blog/comparing-best-open-source-load-testing-tools/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值