我发布Qos = 2的消息,保留message = false并清除session = true。 如果我的订阅者处于离线状态,则再次联机时不会收到Qos 2消息。但是出版商成功获得了PUBREC和PUBCOMP
答案 0 :(得分:4)
它是MQTT协议规范,并不依赖于您正在使用的代理。 发布者能够发布到代理,因此它接收PUBREC和PUBCOMP,因为从发布者到代理的交付已完成。 在发布者和订阅者之间,您有中间的经纪人,因此有两个合同:发布者到经纪人,经纪人到订阅者。这些合同是相互独立的。
然后你保留message = false并且clean session = true,这意味着如果主题没有订阅者,那么发布的消息就会丢失。 考虑一些事情:
我不了解你的情景,但是: