MQTT 中的 retained
(保留消息)是一个重要概念,主要作用如下:
基本定义
retained
是 MQTT 消息的一个标志位,当发布者发送消息时可以设置 RETAIN
标志为 true,这样的消息会被 MQTT 代理(broker)保存。
主要特性
- 消息持久化:Broker 会为每个主题保存最后一条带有 retain 标志的消息
- 新订阅者立即获取:当新的客户端订阅某个主题时,会立即收到该主题的最后一条保留消息
- 自动更新:当有新的保留消息发布到同一主题时,旧的保留消息会被替换
- 清除机制:发布一条空内容(payload 为空)的保留消息可以清除该主题的保留消息