轉:基於Jmeter的MQTT測試外掛程式

來源:互聯網
上載者:User

標籤:

基於Jmeter的MQTT測試外掛程式-上

1. Jmeter外掛程式簡介

Apache JMeter是Apache組織開發的基於Java的壓力測試工具。下載
用於對軟體做壓力測試,它最初被設計用於Web應用測試,但後來擴充到其他測試領域。

這裡我們主要使用的基於Jmeter開發的,測試MQTT協議的外掛程式工具,從github上找到了幾個歪果人寫的外掛程式,主要有以下幾個:

  • tuanhiep/mqtt-jmeter
  • hemikak/mqtt-jmeter
  • winglet/mqttws-jmeter

這3個外掛程式都很像,
第1個下載的最多,但是我在使用發現存在bug,棄之。
第2個功能比較簡單,只能滿足簡單的單主題發送。
第3個是作者基於第1個來改的,並且把串連MQTT的用戶端換成了最常用的paho java用戶端,正好是我項目中使用的,熟悉,功能上雖然沒有第1個豐富,但是有源碼,改改還是可以適用的。

2. mqttws源碼打包

下載解壓之後,匯入到eclipse中,項目是通過maven構建,

外掛程式的:

下面是具體的構建方法:
在項目上點擊右鍵,Run As->Maven clean->Maven install,在target目錄下,將生產一個名為mqttws-jmeter.jar的jar包。
mqttws-jmeter.jar複製到Jmeter的\lib\ext目錄下,再將工程ressource目錄下的messages.properties檔案中相關MQTT的內容複寫至Jmeter的\lib\ext目錄下ApacheJMeter_core.jar中,

使用解壓縮工具開啟,路徑:ApacheJMeter_core.jar\org\apache\jmeter\resources

注意原作者給出的messages.properties中包含的索引值並不全,比如:

mqtt_clean_session= Clean Sessionmqtt_publisher=MQTT Publishermqtt_itertions=Number of samples to aggregatemqtt_connection_timeout=Milliseconds to wait for connection
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

此處沒有全部列出來,請自行添加吧。

3. 外掛程式使用
  • 添加線程組:添加->Threads(Users)->線程組
    Ramp-Up Period(in seconds):設定的虛擬使用者數需要多長時間全部啟動。如果線程數為20 ,準備時間長度為10 ,那麼需要10秒鐘啟動20個線程。也就是每秒
    鐘啟動2個線程。如果設定0,為同時啟動。
  • 添加發布端:線程組右鍵,添加->Sampler->MQTT Publisher
    Provider URL:MQTT伺服器位址
    List Topic:發布的主題。雖然這裡寫的是list,但是作者並不支援,後面會講修改了一下源碼,支援多主題發布
    Number of samples to aggregate:一個線程發布相同訊息的次數
    throttle:連續發送的訊息之間,等待的毫秒數
  • 添加監聽器
    映像,表格都行

轉:基於Jmeter的MQTT測試外掛程式

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.