You need to enable JavaScript to run this app.
导航
名词解释
最近更新时间:2024.07.18 16:53:24首次发布时间:2024.07.18 16:53:24

本文介绍 MQTT 实例中涉及到的专有名词和术语,以帮助您更好地理解相关概念并使用产品。

MQTT 客户端

任何使用 MQTT 协议连接到 MQTT 服务端的设备或应用程序。它既可以是发布者,也可以是订阅者,也可以具备这两种身份。
例如 MQTT 测试工具、使用 MQTT 的应用程序、使用 MQTT 上报数据的设备等等。

MQTT Broker

MQTT Broker 是负责处理客户端请求的关键组件,包括建立连接、断开连接、订阅和取消订阅等操作,同时还负责消息的转发。
MQTT Broker 可以称为服务端。在发布消息的客户端和订阅的客户端之间充当中介,将所有接收到的消息转发到匹配的订阅客户端。

发布-订阅模式

MQTT 基于发布-订阅模式,解耦了消息的发布者和订阅者,发布者和订阅者之间无需建立直接连接,由 MQTT Broker 负责消息的路由和分发。

主题

MQTT 协议根据主题来转发消息。发布者可以在发布时指定消息的主题,订阅者可以通过订阅主题来接收消息。
主题支持通过反斜线/来区分层级,类似于 URL 路径。例如:

sensor/1/temperature
sensor/+/temperature

MQTT 主题也可以用通配符表示,支持以下两种通配符:

  • +:表示单层通配符,例如 a/+ 匹配 a/xa/y
  • #:表示多层通配符,例如 a/# 匹配 a/xa/x/y

说明

用通配符表达的主题只能用于订阅,不能用于发布。订阅者可以在订阅的主题中使用通配符,从而一次订阅多个主题。

QoS

MQTT 提供了三种服务质量(QoS)等级,每条消息都可以在发布时独立设置自己的 QoS。QoS 越大,消息的传输复杂程度也越高,需要根据实际场景来选择。

  • QoS 0:最多交付一次,消息可能丢失。
  • QoS 1:至少交付一次,消息可以保证到达,但是可能重复。
  • QoS 2:只交付一次,消息保证到达,并且不会重复。

保留消息

与普通消息不同,保留消息可以保留在 MQTT 服务器中。
当用户订阅了这条保留消息的主题时,MQTT 会将这条消息发送给用户,即使这个保留消息是在订阅主题之前发布的。