導航:首頁 > 源碼編譯 > tcp壓力測試源碼

tcp壓力測試源碼

發布時間:2025-08-15 14:01:51

㈠ 如何使用 JMeter 對 TCP 協議的服務進行負載測試

1.建立一種類型測試
這里只描述簡單的tcp測試建立步驟,因為目前支持的測試類型很多,無法一一陳述,功能細節部分可以參考JMeter文檔
1)創建測試線程組

2)根據需要設定線程組參數

3)建立TCP采樣

3)配置TCP采樣參數

基本上一個簡單的測試計劃就完成了,點擊運行采樣,就會將文本發送出去。

2.高級功能配置
1)配置結果查看監聽器
有時候需要查看線程組執行結果情況,這個可以通過設定采樣結果查看

針對上面配置的線程組應該執行6次,也就是發送6條消息,通過監控器可以看到的確有6個采樣結果,說明執行成功

2)配置變數
有時候需要在報文中加上一些變化的內容,可以通過在文本中增加變數設定來實現

如增加一個變數名 bank, 其值為 1111,在前面發送的報文中加上${bank}即可引用,如

執行之後就可以在監控器中看到報文中有1111了

3)配置TCP 二進制報文
大多數情況下,報文可能非純文本形式,常常都是不可讀的二進制,所以這種情況下需要配置二進制報文。當前JMeter支持HEX形式,也就是16進制的報文輸入配置
參考: https://wiki.apache.org/jmeter/UserManual/Reference/TcpSampler
當前支持三種格式 1.TCPClientImpl(默認) 2.BinaryTCPClientImpl 3.

使用二進制方式需要做如下幾件事:
a.把普通文本報文翻譯成HEX格式,可以找文本編輯器做這件事。比如notepad++,打開文本文件
Ctrl+A全選內容,paste到一個新文件,替換掉所有空格


如果報文還需要加上頭的話,需要額外計算一下。比如增加一個command id和報文長度。比如上文中文本長度在編輯器狀態欄上顯示155長,假定command id是1.
System.out.println("155 hex " + Integer.toHexString(155)); --- 9b
System.out.println("1 hex " + Integer.toHexString(1)); ---1
如果command id是4個位元組那麼16進制字元串就是 00 00 00 01
如果length也是4個位元組那麼16進制字元串就是 00 00 00 9b
去掉空格加入到前面報文中就拼成如下新報文
000000010000009b

再把新報文放入發送字元串輸入框中。

b.修改JMeter啟動配置,就是前文提到的指定BinaryTCPClientImpl適配
在jmeter.properties文件中找到如下部分,修改一下
#---------------------------------------------------------------------------
# TCP Sampler configuration
#---------------------------------------------------------------------------
# The default handler class
#tcp.handler=TCPClientImpl
tcp.handler=BinaryTCPClientImpl

重新執行TCP測試,可以看到伺服器端正常收到報文,如圖

jmeter測試TCP伺服器,使用TCP采樣器模擬發送TCP請求。
TCP采樣器:打開一個到指定伺服器的TCP / IP連接,然後發送指定文本並等待響應。
jmeter模擬發送TCP請求的方法:
1.新建線程組,然後在線程組中新建TCP采樣器

TCP采樣器中填寫伺服器地址、埠和「要發送的文本」,其它選項根據需要選填:
re_use connection表示重復發送連接請求
close connection 關閉連接
如果TCP請求需要用戶名/密碼,可以在登錄配置中填寫
2.新建「察看結果樹」監視器,查看發送的請求和響應的結果。如果需要發送16進制報文這個地方會失敗。
jmeter發送16進制TCP報文的方法:
很多TCP伺服器報文為16進制,並且多數不能轉換成文本發送,而jmeter默認發送文本。
jmeter.properties中修改tcp.handler=BinaryTCPClientImpl ,啟動jmeter重新發送,抓包查看既是16進制的tcp報文。
另一個方法:可以在工作台新建–非測試元件–Property Display,Property Display中修改jmeter.properties只對當前進程有效。

閱讀全文

與tcp壓力測試源碼相關的資料

熱點內容
androidstudio運行不了 瀏覽:387
一隻胖胖的熊像程序員圖片 瀏覽:829
程序員加班多會引起甲減嗎 瀏覽:112
解壓相冊怎麼折 瀏覽:542
印度伺服器地址 瀏覽:358
指向命令 瀏覽:348
一點基礎都沒有可以當程序員嗎 瀏覽:175
atoshi原子鏈app是什麼 瀏覽:480
如何遠程訪問windows伺服器 瀏覽:596
31歲程序員 瀏覽:82
虛幻4伺服器怎麼買 瀏覽:303
51單片機pwm是什麼程序 瀏覽:328
java解壓縮tar 瀏覽:717
殘疾程序員農村生活 瀏覽:662
基於單片機的錄音筆設計 瀏覽:281
股市趨勢分析pdf 瀏覽:441
用運行命令打開ip 瀏覽:902
解壓貼紙卡點 瀏覽:133
java刪除txt 瀏覽:928
單片機與A 瀏覽:625