MQTT协议
参考:https://docs.emqx.cn/broker/v4.3/development/protocol.html#mqtt%E5%8D%8F%E8%AE%AE
MQTT是一个轻量的发布订阅模式消息传输协议,专门针对低带宽和不稳定网络环境的物联网应用设计。
MQTT官网: http://mqtt.org(opens new window)
MQTT V3.1.1协议规范: http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html(opens new window)
特点
-
开放消息协议,简单易实现
-
发布订阅模式,一对多消息发布
-
基于TCP/IP网络连接
-
1字节固定报头,2字节心跳报文,报文结构紧凑
-
消息QoS支持,可靠传输保证
应用
MQTT协议广泛应用于物联网、移动互联网、智能硬件、车联网、电力能源等领域。
-
物联网M2M通信,物联网大数据采集
-
Android消息推送,WEB消息推送
-
移动即时消息,例如Facebook Messenger
-
智能硬件、智能家具、智能电器
-
车联网通信,电动车站桩采集
-
智慧城市、远程医疗、远程教育
-
电力、石油与能源等行业市场
消息队列与消息中间件适用场景不一样。
MQTT 与消息队列有一定的区别,队列是一种先进先出的数据结构,消息队列常用于应用服务层面,实现参考如 RabbitMQ Kafka RocketMQ;
MQTT 是传输协议,绝大部分 MQTT Broker 不保证消息顺序(Queue),常用与物联网、消息传输等,MQTT Broker 的常见需求可参考&#