天天看點

伺服器壓力測試 wrk,wrk壓力測試工具

wrk壓力測試工具

釋出時間:2020-08-29 23:22:54

來源:51CTO

閱讀:2303

作者:okowo

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接口測試

首先需要準備一個lua檔案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 腳本來批量測試各種接口