3

我们在不同的场所安装了许多本地网关。这些网关将托管一个用于连接所有本地服务的 MQTT 代理。然后需要本地 MQTT 代理将此数据发送到两个远程 MQTT 代理(每个代理由不同的一方托管)。我已阅读有关 Mosquitto 和 VerneMQ 代理的文档,我发现它们一次只允许桥接一个远程服务器。

是否有另一个(开源)代理提供此类功能?如果不是,我们怎么能做到这一点?

4

2 回答 2

6

您可以使用 mosquitto 声明许多桥梁。

mosquitto.conf手册页:

配置网桥

可以使用以下变量配置多个网桥(与其他代理的连接)。

你只有多个块connection

connection test-mosquitto-org
address test.mosquitto.org
cleansession true
topic clients/total in 0 test/mosquitto/org $SYS/broker/

connection foo.broker.org
address 192.168.1.1
topic # both 0
于 2018-02-26T07:56:45.863 回答
0

谢谢哈迪尔。同样在我的情况下,我使用了客户端 ID,显然它们需要每个桥块是唯一的:

例如

connection solace.cloud
address <mqtt address>:<port>
remote_username <username>
remote_password <password>
clientid Alpha
try_private false
start_type automatic
topic Nasdaq/ out 0 b1/ ""
topic Nasdaq/ in 0 "" b2/

connection cloudmqtt
cleansession true
address postman.cloudmqtt.com:<port>
remote_username <username>
remote_password <password>
clientid Beta
try_private true
start_type automatic
topic Nasdaq/# out 0
topic Nasdaq/# in 0
于 2020-01-22T22:34:50.937 回答