2017-04-06 39 views
0

我已經在WebSocket之上實現了一箇中繼服務器。發送者會發送很多小的二進制消息到服務器,然後他們被轉發到所有連接的客戶端。如何使用jmeter來測量websocket發送者和接收者之間的傳輸時間

我感興趣的是發送者發送消息和讀者收到消息之間的時間。現在我已經用25個接收者的線程組和另一個1個發送者組來設置測試計劃,他們可以分別接收和發送消息。

彙總報告將發送消息和讀取消息視爲兩個不同的標籤。我應該如何配置測試計劃來記錄我所需的時間?

p.s.我正在使用這個Jmeter WebSocket採樣器插件
https://bitbucket.org/pjtr/jmeter-websocket-samplers

在此先感謝。

回答

0

彙總報告將考慮發送消息和讀取消息 作爲兩個不同的標籤。

確實是這樣,因爲根據你有兩個獨立的線程組。

您需要同步&順序採樣結果不知何故,所以我看到兩種方法在這裏:

1)寫入原始採樣結果(簡單的作家,彙總報告&總結報告能夠這樣做)的,然後使用外部工具(比如桌面處理器,Excel或類似工具)來處理它們,做簡單的數學計算並顯示您所需的時間。

或者精簡的結果,時間序列數據庫(例如潮)與Backend Listener,並從那裏出發 - 樣,做數學和/或可視化(比如,與Grafana)

2)第二個選擇似乎是同步使用InterThreadCommunication插件將對象線程化爲彼此。

但是,這似乎對我來說更加棘手,更重要的是,可能會影響定時讀數(取決於您的方式),所以結果扭曲。

因此,我個人更喜歡在他們的被動指標讀數和後計算(這可能開啓非常「活」也是如此,如果你想與BackendListener +內流+ Grafana捆綁,或類似)

+0

對於第一種方法,是否意味着我必須使用原始的TCP採樣器來發送WebSocket消息,然後纔會有更多的原始數據可用,並且可以進行後期計算? –

+0

由你決定,我相信它有點像採樣器類型不可知論 - 更多的是關於tymeyncing的整體方法。 至於什麼類型的數據被寫入 - 同樣,通常不是採樣器特定的:所有采樣器都會產生具有特定參數的標準輸出,所以聽衆總是有幾乎相同的東西被寫入。 你可以配置,請參考本節:http://jmeter.apache.org/usermanual/listeners.html#defaults –

相關問題