wrk安裝
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的雙塔網(wǎng)站設(shè)計(jì)、移動媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
Mac下安裝:brew install wrk
即可安裝成功,進(jìn)入wrk目錄/usr/local/Cellar/wrk/4.0.2/bin,執(zhí)行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個(gè)用戶線程 -c100模擬100個(gè)連接
3. 統(tǒng)計(jì)分析
項(xiàng)目 | 名稱 | 說明 |
---|---|---|
Avg | 平均值 | 每次測試的平均值 |
Stdev | 標(biāo)準(zhǔn)偏差 | 結(jié)果的離散程度,越高說明越不穩(wěn)定 |
Max | 最大值 | 最大的一次結(jié)果 |
+/- Stdev | 正負(fù)一個(gè)標(biāo)準(zhǔn)差占比 | 結(jié)果的離散程度,越大越不穩(wěn)定 |
Latency: 可以理解為響應(yīng)時(shí)間
Req/Sec: 每個(gè)線程每秒鐘的完成的請求數(shù)
一般我們來說我們主要關(guān)注平均值和最大值.
標(biāo)準(zhǔn)差如果太大說明樣本本身離散程度比較高. 有可能系統(tǒng)性能波動很大
4.wrk Post接口測試
wrk.method = "POST" wrk.headers["Content-Type"] = "application/x-www-form-urlencoded" wrk.body = "youbody&youset"
這個(gè)文件內(nèi)容建議自己填寫,保存為 post.lua
文件
當(dāng)然這個(gè)腳本內(nèi)容可以再次定義,具體查看wrk的git文檔
執(zhí)行腳本
wrk -t4 -c2000 -d60s -T5s --script=post.lua --latency http://192.168.31.107/user/login
這樣就是模擬4個(gè)線程,2000個(gè)連接,在60s內(nèi),間隔5s 執(zhí)行 post.lua 的請求
你可以擴(kuò)展一下,制作 shell 腳本來批量測試各種接口