websocket 壓測時如何保持長鏈結不斷開

2021-10-08 15:07:11 字數 1346 閱讀 6916

場景描述:模擬使用者連線websocket後,保持心跳,長連線不斷開

websocket壓測思路分析:

1、建立websocket鏈結 ;

2、在鏈結下保持心跳,使用jmeter迴圈控制器傳送心跳保持鏈結;

3、引數化請求引數;如併發量、連線迴圈次數;

概念:

websocket是一種持久化連線,先通過http協議建立一次連線,在連線中通過

websocket協議持續和伺服器進行互動,同時該協議存在被動性特點,服務端可以主動

通知客戶端下面是具體抓包情況,可以看出在websocket連線之後,向伺服器傳送請求

無需再次建立http連線

場景模擬:

1、新建乙個測試計畫  -- 執行緒組,並新增乙個取樣器,建立ws關係連線

2、正確填入相關的ws資訊

1)代表協議型別,ws對應http,wss對應https;

2)請求伺服器名稱,從抓包結果可以獲得;

3)請求埠號,從抓包結果可以獲得;

4)請求路徑,從抓包結果可以獲得;

5)連線5s後未連上超時,可以自己設定;

6)請求資料,從抓包結果可以獲得;;

7)響應6s後未成功超時,可以自己設定;

3、ws連上之後再新增乙個取樣器,連線方式選擇:使用已存在的連線,這樣就不用重新去建立ws連線關係,直接飲用上面乙個就可以了

4、取樣器建立好之後,通過迴圈控制器保持心跳,不被斷開,自己設定的是10次,看業務場景需要,自行設定

5、可以看看結果了~

參考文件:

JMeter壓測時如何在達到給定錯誤數量後停止測試

在做介面自動化效能測試時,偶爾會有不穩定的因素導致請求斷言失敗。jmeter執行緒組對錯誤處理有兩種常用處理方式 繼續或停止測試 因某些原因極個別錯誤不影響壓測結果是可以忽略的,若選擇繼續測試,當真正發生服務崩潰時也會一直壓下去這不是我們想要的,那麼在壓測過程中怎樣才能在達到指定的累計錯誤數量後停止...

sharedpreferences如何儲存物件

昨天做了乙個搜尋歷史的功能,然後根據搜尋的歷史可以調回到上乙個頁面,這裡涉及到乙個用sharedpreferences儲存物件的問題,sharedpreferences是不能夠直接儲存物件的,我們需要將物件序列化成乙個字串進行儲存。例如 playlist這樣乙個物件 public static vo...

聊聊 Jmeter效能壓測時 常見的一些報錯

引子 收到產品的需求 當前對於 鏈系統中的訂單一次大批量5000單 分頁審核時 系統比較緩慢,請在穩定測試環境中對這個 審核 功能做一次 效能壓測。關於這個需求 我們對於 穩定環境 與 真實環境的 區別 先忽略,由於是不同環境配置,這個硬體 網路配置問題 我們先忽略。簡單說明下 我們的系統網路結構,...