【问题标题】:Testing a MQTT Client using JMeter使用 JMeter 测试 MQTT 客户端
【发布时间】:2020-12-07 12:45:25
【问题描述】:

我需要负载测试,Web 套接字 J2EE 应用程序服务于移动客户端。移动客户端使用 MQTT over web socket 协议。列出功能:

i) 移动客户端连接到 Web 套接字端点。 ii) 此后它以 MQTT 数据包的形式发送二进制数据。

查看 JMeter 对其进行负载测试。使用以下 JMeter 插件。 https://github.com/tuanhiep/mqttjmeter

我使用 MQTT Connect 采样器并将协议更改为“ws”并将端口更改为“8080”。当我尝试连接时,我没有看到任何标准的 websocket 请求被发送。 Tomcat(J2EE 服务器)发送 502 状态码。

我们将非常感谢您在这方面的任何帮助。

【问题讨论】:

    标签: jmeter-plugins jmeter-5.0 java-websocket


    【解决方案1】:

    此插件在底层使用支持 TCP 的 fusesource mqtt client 库,最终支持 SSL and TLS protocols,您将无法通过此插件使用 WebSocket 传输对您的 MQTT 代理进行负载测试

    考虑切换到JMeter WebSocket Samplers,一旦建立连接,您就可以发送移动客户端发送的任何有效负载。

    更多信息:JMeter WebSocket Samplers - A Practical Guide

    【讨论】:

    • 谢谢。我对此还有一个问题。移动客户端发送的数据有一些值会随着每个请求而改变……例如“mobile-session-id”。 payload一般是json字符串,需要封装成MQTT报文格式,然后通过web socket连接发送。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    • 2017-02-22
    • 2011-06-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多