MQTT物联网消息队列的概念介绍以及broker选型对比

MQTT消息队列简介

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是一种基于发布/订阅模式的轻量级消息协议,专门为低带宽、高延迟或不稳定的网络环境设计。

核心思想:​​发布/订阅模式​​,实现消息的异步、解耦传输

1.1、协议特点

​​轻量级​​:协议头最小只有2字节

​​基于TCP/IP​​:保证数据可靠传输

​​ 双向通信​​:客户端可同时作为发布者和订阅者

​​ 支持多种QoS等级​​:满足不同可靠性需求

​​ 遗嘱消息​​:处理客户端异常断开情况

MQTT 核心架构与组件

2.1、架构组成

publisher -------------------- Broker ------------------- Subscriber

publisher publish broker

broker subscribe Subscriber

2.2、核心组件解析:

Broker(代理服务器):消息中转站,负责接收、过滤、路由消息

功能:

客户端认证和授权、主题管理和消息路由、会话持久化、QoS 级别实现

Client(客户端):

发布者​​:发送消息到特定主题

订阅者​​:订阅感兴趣的主题,接收消息

可同时担任两种角色​

Topic(主题)

格式​​:分层结构的字符串,用/分隔,示例:vehicle/123/gps/location

主题通配符:

通配符 含义 示例 匹配主题
+ 单级匹配 home/+/temperature home/living-room/temperature
# 多级匹配 factory/# factory/line1/robot1/speed

MQTT协议详解

3.1、连接建立过程

复制代码
CONNECT​​:客户端发起连接请求
CONNACK​​:Broker 确认连接
认证机制​​:支持用户名/密码、客户端证书等

3.2、消息控制流转

复制代码
# 典型的消息流程
client.connect()                    # 建立连接
client.subscribe("sensors/temp")    # 订阅主题
client.publish("sensors/temp", "25") # 发布消息

3.3、服务质量(QoS)级别

Qos 名称 传输保证 消息重复 性能 应用场景
0 最多一次 可能丢失 消息重复 性能 应用场景
1 至少一次 不丢失 可能重复 中等 控制指令、状态更新
2 恰好一次 不丢失 不重复 最低 支付交易、关键配置

3.4、特殊消息类型

复制代码
**1)、保留消息(Retained Message)**
	Broker 为每个主题保存最新的消息
	新订阅者立即收到最后一条保留消息
​​	用途​​:设备状态同步、初始化数据
**2)、遗嘱消息(Last Will and Testament)**
	客户端异常断开时,Broker 自动发布预设消息
	用途​​:设备离线通知、状态清理

主流 MQTT Broker 对比

Broker 类型 集群支持 性能 管理界面 学习曲线 推荐场景
Mosquitto 开源 需要三方 中等 基础 简单 开发测试、小规模部署
EMQX 开源 原生支持 极高 丰富 中等 生产环境、大规模集群
HiveMQ 商业 企业级 极高 丰富 中等 企业级关键应用
NanoMQ 开源 轻量级 基础 简单 边缘测部署
AWS IoT Core 云服务 自动扩展 极高 集成 简单 云原生架构

与其他协议对比

特性 MQTT AMQP HTTP/HTTPS CoAP
协议类型 消息协议 消息协议 请求/响应 类HTTP
头部开销 2字节起 8字节起 100+字节 4字节
通讯模式 发布/订阅 多种模式 请求/响应 请求/响应
底层传输 TCP TCP TCP UDP
适用场景 IoT、机器人 企业消息 Web服务 受限设备
相关推荐
天诚智能门锁16 小时前
天诚cat.1人脸公租房智能锁及管控平台助力三门县公租房管理
大数据·人工智能·物联网·智慧城市·公租房
钰珠AIOT17 小时前
什么是电容的漏电流?有什么意义?
物联网·电子电路
MikelSun18 小时前
Sun01 - STM32智能编译烧录助手
人工智能·stm32·单片机·物联网·iot
数字新视界1 天前
如何通过数字化管理提升IT资产管理系统的效率与准确性?
物联网·数据中心·dcim·动环监控·新人首发
胡楚昊2 天前
借Polar IOTS一道困难挑战题简单入门蓝牙流量分析
物联网·蓝牙
神一样的老师2 天前
【兆易创新GD32VW553开发板试用】天气时钟设计与调试实战
单片机·嵌入式硬件·物联网
怎么就重名了2 天前
mosquitto在windows上的安装和测试
物联网
搜佛说3 天前
sfsEdgeStore用极致轻量化打破工业物联网网关的硬件瓶颈 重新定义边缘存储新标准
物联网
HiWooiot20183 天前
工厂局域网远程监测:制造企业轻量化数字化转型解决方案
物联网
电子科技圈3 天前
芯科科技在蓝牙亚洲大会展示汽车与边缘AI前沿蓝牙创新技术, 解锁车用、家居、健康及工商业等应用场景
人工智能·科技·嵌入式硬件·mcu·物联网·网络安全·汽车