Mac下安装:brew install wrk
即可安装成功,进入wrk目录/usr/local/Cellar/wrk/4.0.2/bin,执行wrk命令即可
简单的性能测试
bin git:(master) wrk -t12 -c100 -d30s Running 30s test @ 12 threads and 100 connections Thread Stats Avg Stdev Max +/- Stdev Latency 55.09ms 95.37ms 1.47s 90.01% Req/Sec 271.78 122.50 626.00 66.39% 95509 requests in 30.08s, 55.70MB read Socket errors: connect 0, read 0, write 0, timeout 1 Requests/sec: 3175.48 Transfer/sec: 1.85MB-t12 为模拟12个用户线程 -c100模拟100个连接
3. 统计分析
项目名称说明Avg 平均值 每次测试的平均值
Stdev 标准偏差 结果的离散程度,越高说明越不稳定
Max 最大值 最大的一次结果
+/- Stdev 正负一个标准差占比 结果的离散程度,越大越不稳定
Latency: 可以理解为响应时间
Req/Sec: 每个线程每秒钟的完成的请求数
一般我们来说我们主要关注平均值和最大值.
标准差如果太大说明样本本身离散程度比较高. 有可能系统性能波动很大
4.wrk Post接口测试
首先需要准备一个lua文件wrk.method = "POST" wrk.headers["Content-Type"] = "application/x-www-form-urlencoded" wrk.body = "youbody&youset"
这个文件内容建议自己填写,保存为 post.lua 文件
当然这个脚本内容可以再次定义,具体查看wrk的git文档
执行脚本
wrk -t4 -c2000 -d60s -T5s --script=post.lua --latency这样就是模拟4个线程,2000个连接,在60s内,间隔5s 执行 post.lua 的请求
你可以扩展一下,制作 shell 脚本来批量测试各种接口
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。