SuperBenchmarker 是ㄧ個開源的相似於Apache ab的壓力測試命令行工具。能夠在 .NET 4.52+ 或者 .NET Core 2.0+ 平臺上運行。html
可支持Get、Post、Put、Delete這些調用方式,調用時能指定Concurrent user、Request數、Header template…等。ios
能夠從Github、Chocolatey這兩種方式得到。git
Github用戶可在download目錄內取得編譯好的程序主文件github
Chocolatey使用者可輸入下列命令進行下載web
cinst SuperBenchmarker工具
程序的做者是建議用Chocolatey去得到程序主文件,由於放置的程序主文件已經被做者用ILMerge將依賴的組件合併,得到後就可直接使用。 性能
程序的使用方式可直接在命令行下輸入sb查看,裏面會有程序的使用方式、參數、及簡易的使用範例測試
其中比較重要的參數大概有下列幾個網站
-u 可用來指定要壓測的網站或是API.net
-n 可用來指定要壓的Request數量
-c 可用來指定Concurrent Request數量
-m 可用來指定要使用的HTTP Method
-h 可用來指定要顯示HTTP Header
-q 可用來指定要顯示Cookie
因此咱們要發送1000個Request去測試騰訊網的話 能夠輸入命令
sb -u https://www.qq.com -n 1000
要發送1000個Request, 且同時間可能有10個Concurrent Request去測試騰訊網的話 能夠輸入命令
sb -u https://www.qq.com -n 1000 -c 10
要在發送命令後顯示Header的話, 可帶入參數-h
sb -u https://www.qq.com -n 1000 -c 10 -h
要在發送命令後顯示Cookie, 可帶入參數-q
sb -u https://www.qq.com -n 1000 -c 10 -h -q
命令運行的最後咱們都會看到相似下面這樣的畫面:
這邊有簡易的測試統計,能夠看出每秒可處理多少的Request、最大的處理時間、最小的處理時間、平均的處理時間、以及壓了這麼屢次的API,依比例分大概在哪一個範圍。
同時還有網頁來展示測試統計結果
這些數值有助咱們評估網站或是API的性能與負載量。 除了看這些數據外,這邊建議也能夠在壓的時候看一下Server上的CPU Loading,磁盤IO,以及內存的使用情況,甚至能夠用性能監視器拉些數值來看。
相關連接