wrk 安装以及使用

WRK 编译安装

没有找到 yum 源, 这里记录 wrk 的安装过程

安装

# 1. 切换到待安装的目录
cd /usr/local/src

# 2. 免提示(-y), 安装 git
yum install git -y

# 3. 下载 wrk 源码
git clone https://github.com/wg/wrk.git

# 4. 进入安装文件夹
cd wrk

# 5. 下载 gcc 编译器, 并编译
yum -y install gcc
make

# 6. 创建软连接, 方便全局调用
ln -s /usr/local/src/wrk/wrk /usr/local/bin

使用

  1. 基础使用

使用 12 个线程, 保持 400 HTTP 连接持续运行三十秒.

wrk -t12 -c400 -d30s http://127.0.0.1:8080/index.html

结果类似如下:

Running 30s test @ http://127.0.0.1:8080/index.html
  12 threads and 400 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   635.91us    0.89ms  12.92ms   93.69%
    Req/Sec    56.20k     8.07k   62.00k    86.54%
  22464657 requests in 30.00s, 17.76GB read
Requests/sec:    748868.53
Transfer/sec:    606.33MB
  1. 参数说明
短参数 长参数 描述
-c –connections 保持开启的总连接数, 每个线程均摊服务
-d –duration 持续时间, 比如: 2s, 2m, 2h
-t –threads 被使用的总线程数
-s –script LuaJIT script, see SCRIPTING
-H –header HTTP 请求头, 比如: “User-Agent: wrk”
–latency 打印详细的延迟统计信息
–timeout 记录超时的响应报文
  1. 建议

    • 运行 wrk 的设备需要有足够的空闲端口, 被关闭的套接字需要迅速的被回收利用.
    • 仅更改 HTTP 请求方法, 路径, 添加 header 或 body 并不影响性能.
    • 请求操作, 尤其是新建立的请求, 使用 response() 必然能减少负载量.

转载注明原文

鸣谢 WRK.

你可能感兴趣的:(wrk 安装以及使用)