一, mac安装
官网地址: https://github.com/wg/wrk/blob/master/README.md
mac 安装: brew install wrk
查看是否安装成功: wrk -v
centos安装:
sudo yum groupinstall 'Development Tools' sudo yum install -y openssl-devel git git clone GitHub - wg/wrk: Modern HTTP benchmarking tool wrk cd wrk make # 将可执行文件移动到 /usr/local/bin 位置 sudo cp wrk /usr/local/bin
二,使用
wrk只能直接使用get、delete请求,post请求需要用到lua脚本.
一般设置的线程数是电脑核数的2-4倍
get请求: wrk -t12 -c400 -d30s --latency 百度一下,你就知道
命令解释如下 Options: -c, --connections N> 跟服务器建立并保持的TCP连接数量 -d, --duration T> 压测时间 -t, --threads N> 使用多少个线程进行压测 -s, --script S> 指定Lua脚本路径 -H, --header H> 为每一个HTTP请求添加HTTP头 --latency 在压测结束后,打印延迟统计信息 --timeout T> 超时时间 -v, --version 打印正在使用的wrk的详细版本信息 N>代表数字参数,支持国际单位 (1k, 1M, 1G) T>代表时间参数,支持时间单位 (2s, 2m, 2h)
结果说明:
(平均值) (标准差) (最大值)(正负一个标准差所占比例) Thread Stats Avg Stdev Max +/- Stdev (延迟) Latency 386.32ms 380.75ms 2.00s 86.66% (每秒请求数) Req/Sec 17.06 13.91 252.00 87.89% Latency Distribution (延迟分布) 50% 218.31ms 75% 520.60ms 90% 955.08ms 99% 1.93s 4922 requests in 30.06s, 73.86MB read (30.06s内处理了4922个请求,耗费流量73.86MB) Socket errors: connect 0, read 0, write 0, timeout 311 (发生错误数) Requests/sec: 163.76 (QPS 163.76,即平均每秒处理请求数为163.76) Transfer/sec: 2.46MB (平均每秒流量2.46MB)
参照: https://www.cnblogs.com/quanxiaoha/p/10661650.html