wrk安装
Mac下安装:brew install wrk
即可安装成功,进入wrk目录/usr/local/Cellar/wrk/4.0.2/bin,执行wrk命令即可
简单的性能测试
bin git:(master) wrk -t12 -c100 -d30s http://weibo.com Running 30s test @ http://weibo.com 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接口测试
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 http://192.168.31.107/user/login
这样就是模拟4个线程,2000个连接,在60s内,间隔5s 执行 post.lua 的请求
你可以扩展一下,制作 shell 脚本来批量测试各种接口
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。