在线MQTT客户端,支持连接测试、消息发布与订阅、协议调试分析。适用于物联网设备测试和MQTT协议学习。
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是一种基于发布/订阅模式的轻量级通信协议,专门为低带宽、高延迟或不可靠的网络环境设计。它广泛应用于物联网(IoT)领域,是设备与云平台通信的重要协议。
| 概念 | 说明 |
|---|---|
| Broker | MQTT服务器,负责接收、过滤和转发消息 |
| Client | MQTT客户端,可以是发布者、订阅者或两者兼具 |
| Topic | 消息主题,用于消息分类和路由,支持通配符 |
| Publish | 发布消息到指定主题 |
| Subscribe | 订阅一个或多个主题,接收相关消息 |
| QoS | 消息服务质量等级(0-2),决定消息传递的可靠性 |
MQTT提供三种服务质量等级,确保不同场景下的消息传递可靠性:
| QoS等级 | 名称 | 说明 | 适用场景 |
|---|---|---|---|
| 0 | 至多一次 | 消息发送后不等待确认,可能丢失 | 不重要的数据,如传感器周期性上报 |
| 1 | 至少一次 | 确保消息至少送达一次,可能重复 | 重要但不允许丢失的数据 |
| 2 | 恰好一次 | 确保消息恰好送达一次,无重复 | 关键业务数据,如支付指令 |
测试提示:您可以使用公共MQTT Broker进行测试,如 broker.emqx.io、test.mosquitto.org 等。这些公共服务器无需注册即可使用,适合学习和测试。
合理的主题设计可以提高系统的可维护性和扩展性:
home/living-room/temperaturedevices/device-001/statussensors/temperature、actuators/switchMQTT支持两种通配符,用于订阅多个相关主题:
home/+/temperaturehome/#连接失败可能的原因:
根据业务需求选择:
MQTT over WebSocket允许在浏览器环境中使用MQTT协议,而标准MQTT基于TCP协议。WebSocket版本更适合Web应用和前后端通信。