其實TCP測試的工具有很多,那BeetleX
工具所提供的特點又是什么呢?如果你需數十萬的請求或模擬上百萬的設備連接,那這個工具相信可以滿足你的需要!工具是基於BeetleX
的基礎功能擴展,支持多IP綁定可以輕松實現上百萬的client模擬;在性能上工具可以在一台4核的PC可達到數十萬的Socket讀寫效能足以滿足模擬大並發請求處理的需求。以下介紹這個工具的部署和使用
下載
工具下載地址: https://github.com/IKende/TCPBenchmarks/blob/master/TCPBenchmarks0.6.zip
部署
工作的運行環境是.net core 2.1或更高版本
- linux 運行
dotnet TCPBenchmarks.dll or ./run.sh
- windows 運行
dotnet TCPBenchmarks.dll or run.bat
可以通過輸出運行的日志查看運行情況
訪問
運行后可以通過瀏覽器訪問打開工具,訪問地址http://host:9090
;工具默認是打開9090
端口。如果需要調整端口可以通過修改httpconfig.json
來設置
"Host": "", "Port": 9090,
運行后工具界面如下:
添加消息
工具在測試服務時必須增加需發發送的消息,消息以字符的方式來描述,格式有兩種分別是utf-8
和hex
。
在編寫消息的時候可以進行測試,測試會返回當前內容對應的hex
和utf-8
.
性能測試
對於性能測試來說,需要考慮自己對那些指標的要求。如果只是想壓測請求響應量那應該用適當的連接數,並選擇Response
模式。如果需要模擬幾十上百萬的大量連接建議使用Interval
畢竟單機硬件有很,無法同時對這么多的連接進行並發處理。
工具會提供一個詳細的測試結果,主要包括一些並發指標和請求響應延時的分布。在下面還提供兩個走勢圖,分別是socket的讀寫io並發量和相應TCP讀寫的數據量。
大量連接測試
一個IP
最多只能使用6萬多個端口,就是說一個IP最多只能創建6萬多個client;工具只會使用10000-60000端口的范圍,如果需要創建超過5萬個client就必須在當前系統添加多個IP
.而這些IP
地址都必須能訪問測試的服務。以下是創建1百萬連接的測試情況