12.26 輕量-異步網絡IO,高併發壓測-WRK,QPS輕鬆上萬次

概述

WRK—現代HTTP基準測試工具,在多核CPU上運行時,能夠產生大量負載。它結合了多線程設計和可擴展的事件通知系統如epoll和kqueue; 支持大多數類Unix系統,不支持Windows。

基於wrk優化的wrk2可提供的額外參數 -R,用以指定每秒特定請求數的限制。

安裝

git clone https://github.com/wg/wrk.git

cd wrk && make

cp wrk /usr/sbin/wrk && chmod +x /usr/sbin/wrk

命令選項

輕量-異步網絡IO,高併發壓測-WRK,QPS輕鬆上萬次

演示示例

1. 基本示例

wrk -t2 -c30 -d30s --latency http://192.168.31.92/

輕量-異步網絡IO,高併發壓測-WRK,QPS輕鬆上萬次

2. POST|GET 傳參請求測試

wrk -t2 -c10 --latency --script=params.data http://192.168.31.91/api/test/

請求參數:params.data

wrk.method = "POST"

wrk.body = "username=chris&password=123456"

wrk.headers["Content-Type"] = "application/x-www-form-urlencoded"


3. 修改請求頭信息User-Agent測試

wrk -t2 -c10 -d10s --latency -H "User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36" http://192.168.31.92/


輕量-異步網絡IO,高併發壓測-WRK,QPS輕鬆上萬次

4. 基於lua腳本定製測試報告

wrk -c10 -t2 -d10s -s setup.lua --latency http://192.168.31.92/

setup.lua腳本內容:

輕量-異步網絡IO,高併發壓測-WRK,QPS輕鬆上萬次

壓測結果:

輕量-異步網絡IO,高併發壓測-WRK,QPS輕鬆上萬次


分享到:


相關文章: