【压测】wg/wrk 轻量级压测

wg/wrk 轻量级压测

说明:环境是 centos,不过现在 centos 免费版本不再更新和维护了,所以大家可以用阿里云的或者用 ubuntu 内核
用的 https://github.com/wg/wrk.git 有 35k star
然后据我了解,windows 用 wrk 压测有点麻烦,我也试过,把方法,放在最后了

一、安装 wrk
yum install -y gcc make openssl-devel  #安装编译工具、openssl开发包以及其他必要的依赖项
git clone https://github.com/wg/wrk.git
cd wrk
make # 编译
cp wrk /usr/local/bin/ # 将wrk可执行文件移动到系统路径中,这样它就可以在任何位置运行,确保`/usr/local/bin/`在系统的`$PATH`环境变量中。

如果没有 git ,就安装一下

yum install git
二、开始压测

wrk -t12 -c400 -d30s http://127.0.0.1:8888/manage/getManageStatisticsAll?x-token=

  • -t12:使用12个线程进行测试。
  • -c400:使用400个并发连接进行测试。
  • -d30s:运行测试持续30秒。
  • 参数意思参考:https://github.com/wg/wrk
  12 threads and 400 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    37.76ms   18.14ms 232.05ms   72.32%
    Req/Sec     0.89k   159.11     1.56k    69.98%
  317812 requests in 30.07s, 146.70MB read
  Non-2xx or 3xx responses: 317812
Requests/sec:  10567.92
Transfer/sec:      4.88MB


使用wrk工具进行了HTTP基准测试,使用了12个线程和400个连接。以下是测试结果的一些关键指标:

平均延迟(Latency):37.76毫秒
延迟标准差(Stdev):18.14毫秒
最大延迟(Max):232.05毫秒
平均请求数(Req/Sec):0.89k(即每秒处理的请求数量为890)
请求数量的标准差(Stdev):159.11
最大请求数(Max):1.56k(即最多每秒处理1560个请求)
总请求数:317,812
总传输数据量:146.70MB
非2xx或3xx响应的请求数:317,812(即所有请求都返回了非成功的状态)
根据测试结果,平均每秒处理的请求数为10,567.92,传输速率为4.88MB/s。
windows 版本用 wrk
在Windows上使用wrk工具进行基准测试需要进行一些额外的步骤。以下是在Windows上使用wrk的一般步骤:

安装依赖项:

Visual C++ Redistributable for Visual Studio 2015:您可以从Microsoft的官方网站下载并安装此依赖项。
OpenSSL:您可以从https://slproweb.com/products/Win32OpenSSL.html下载并安装适用于您的Windows版本的OpenSSL。
下载wrk源代码:

访问wrk的GitHub仓库:https://github.com/wg/wrk
点击"Code"按钮,然后选择"Download ZIP"来下载wrk的源代码。
解压缩wrk源代码:

将下载的ZIP文件解压缩到您选择的目录中。
构建wrk:

打开命令提示符或PowerShell,并导航到wrk源代码目录。

运行以下命令来构建wrk:

Copy
cd wrk-master
cmake -B build -DCMAKE_BUILD_TYPE=Release .
cmake --build build --config Release
构建完成后,您将在wrk-master\build\Release目录中找到生成的wrk可执行文件。

运行wrk:

在命令提示符或PowerShell中,导航到生成的wrk可执行文件所在的目录。

使用类似于以下命令的语法运行wrk:

Copy
wrk.exe -t12 -c400 -d30s http://example.com
将http://example.com替换为您要测试的目标URL。

你可能感兴趣的:(压测,测试工具)