wrk壓力測試工具

  1. wrk安裝

    Mac下安裝:brew install wrk

    即可安裝成功,進入wrk目錄/usr/local/Cellar/wrk/4.0.2/bin,執行wrk命令即可

  2. 簡單的性能測試

  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 腳本來批量測試各種接口


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章