发布到多个经纪人


我想使用https://github.com/eclipse/paho.mqtt.golang实现某种消息扇出。


我期待客户端连接并发布到所有代理。但我可以在他们各自的仪表板中看到它只连接到其中一个经纪人。


tgOpts := mqtt.NewClientOptions()

for _, target := range targets {

    tgOpts.AddBroker(target)

}

我必须为每个目标代理创建一个客户端,还是我做错了什么?


至尊宝的传说
浏览 62回答 1
1回答

郎朗坤

MQTT 是基于主题的模型,一个代理有多个客户端,而不是相反。一些代理(例如 mosquitto)支持桥接,它允许跨代理构建扇出设置,但此设置处于代理级别,核心 MQTT 功能仍然是每个客户端连接 1 个代理。如果要发布到多个代理,则需要连接到每个代理并单独发布。
打开App,查看更多内容
随时随地看视频慕课网APP