MQTT的Retained消息
2023-12-21 10:34:20
简单说:发布保留标识。表示服务器要保留这次推送的信息,如果有新的订阅者出现,就把这消息推送给它,如果设0那么推送至当前订阅者后释放。
Retained 消息是指在 PUBLISH 数据包中 Retain 表示为 1 的消息,Broker 收到消息后,将会为该主题保存该 Retained 消息。当有新的订阅者订阅该主题时,Broker 会将这个消息立即发送给新的订阅者。
Retained 消息存在以下特点:
-
一个 topic 只能存在一条 Retained 消息,发布新的 Retained 消息将会覆盖旧消息;
-
若订阅者使用通配符订阅主题,那么该订阅者将会收到所有的匹配主题的 Retained 消息;
-
只有新的订阅者才能够收到 Retained 消息;
需要注意:Retained 消息与持久会话没有任何关系。Retained 消息针对主题 topic,Broker 为每一个 topic 单独存储;持久会话针对客户端 Client,Broker 为每一个 Client 单独存储。
当 Retained 消息发送到订阅者时,PUBLISH 数据包中的 Retain 字段仍然为 1,订阅者可以根据该字段判断该消息是否是 Retained 消息从而进行相应的处理。
文章来源:https://blog.csdn.net/quantum7/article/details/135122754
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!