【发布时间】:2019-06-27 10:00:53
【问题描述】:
在 MQTT 中,如果您发布到没有订阅者的主题,则消息将被丢弃。
虽然这对于经典的 pub/sub 消息传递来说很好,但对于共享订阅(已在 MQTT 5 中引入)来说不是很好,因为这种模式通常用于某种作业队列,而您通常不会不想仅仅因为现在没有工人就放弃工作(也许它刚刚崩溃并正在重新启动)。
是否可以告诉 MQTT 服务器不要丢弃消息,至少对于共享订阅,即使现在没有订阅者?如果有,怎么做?
PS:这不仅仅是一个持久会话,因为我不想保留每个客户端的订阅。它更像是一个跨越多个客户端的“持久会话”。
【问题讨论】:
-
您找到解决问题的方法了吗?如果是这样,请与我们分享。就我而言,我面临同样的问题,这是我在 MQTT 和 Kafka 之间进行选择的关键因素。
-
很遗憾,没有……事实上,我们放弃了 MQTT,因为它还有其他缺点,而是为此构建了一个自定义解决方案。
标签: mqtt