wrk压测基础

一.环境搭建

1.git clone https://github.com/wg/wrk.git

2.cd wrk

3.make

4.make 成功以后在目录下有一个 wrk 文件,就是我们压测使用的可执行文件;

5.试试效果

执行 ./wrk -t12 -c100 -d3s http://www.baidu.com

返回压测结果,OK

ps:

1.如果出现报错:fatal error: openssl/ssl.h: No such file or directory

执行,sudo apt-get install libssl-dev 或者 sudo yum install openssl-devel

二.压测准备

1.参数说明

-t 线程数 线程数不宜过多. 核数的2到4倍足够了

-c 连接数

-d 测试的持续时间

–latency 显示响应时间分布

–script = x.lua 读取 x.lua 脚本

ps:

使用lua脚本,一般修改method, header, body不会影响测试端性能,但是操作 request, response 可能会有影响。

2.返回结果参数

Avg 平均响应时间

Stdev 标准偏差

Max 最大值

+/- Stdev 正负标准差占比Req/Sec每个线程每秒钟的完成的请求数

Transfer/sec 每秒钟读取的数据量

Requests/sec QPS

三.压测步骤

1.寻找最大线程数:

a.固定连接数,持续时间,调高线程数;

b.当线程数增加QPS不再明显变化,且平均响应时间变高时,即为最佳线程数;

2.寻找QPS峰值:

a.固定线程数为最大线程数,固定持续时间,调整连接数;

b.当连接数增加QPS不再明显变化,且平均响应时间变高时,即为QPS峰值;

    原文作者:周婷婷
    原文地址: https://zhuanlan.zhihu.com/p/49037763
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞