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服务 受限设备
相关推荐
调试优选官17 小时前
IoT物联网系统定制落地实践:从设备接入、协议网关、平台分层到业务应用,如何做技术选型、交付验收、责任边界与长期运维成本评估及迁移安排
物联网·iot·成本分析
华允物联-HUAIOT19 小时前
工业路由器和DTU在联网方式上的区别
物联网
wuyk55519 小时前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
码流子19 小时前
高速公路安全监测实践:碰撞监测预警+物联网底座,从感知到处置的闭环
大数据·人工智能·物联网·算法·架构
绿蕉21 小时前
配电房的“AI听诊师”:可视化声纹局放智能巡检系统与通讯保障
物联网
chshang19921 天前
工业路由器是什么?浅谈5G工业网络中的IR602
网络·物联网·5g·智能路由器
做萤石二次开发的哈哈1 天前
海康商用音频主机接入萤石蓝海 AIoT:多路拾音、矩阵路由、分区广播、应急广播四类技能,IP 网络广播系统多端开发实战
物联网·音频矩阵·萤石开放平台·ip网络广播·蓝海aiot一站式工作台·aiot开发·公共广播
wuyk5551 天前
【Socket 进阶之路】第 9 章 Linux 网络服务量产稳定性优化|心跳保活、TIME_WAIT、SO_LINGER、内存池、断线重连、完整异常防护框架
linux·服务器·开发语言·网络·物联网
CServer_011 天前
开源!混合存储底座+湖仓一体的AI数据中台
物联网·制造
数字新视界1 天前
数据中心基础设施管理系统的智能监测与运维整合剖析
数据库·物联网·数据中心·数据中心基础设施管理·dcim管理系统