ActiveMQ Artemis和MQTT桥接

时间:2018-11-30 09:56:32

标签: mqtt activemq-artemis

Mosquitto MQTT代理提供了一种桥接两个MQTT代理以发布和订阅消息的功能。描述here

当任何客户端将消息发布到ActiveMQ Artemis代理时,我希望基于配置的主题映射将这些消息自动发布到另一个MQTT代理。我想知道这是否可以通过ActiveMQ Artemis内置的功能或通过代理插件实现。

1 个答案:

答案 0 :(得分:1)

Artemis确实具有用于“核心”协议的桥接功能以及通用的JMS桥实现,但是它内置了 MQTT桥接功能。另外,由于两个原因,我认为通过代理插件实现此方法不是一个好主意。首先,插件的延迟应尽可能低,因为插件的任何延迟都会影响其他客户端。其次,插件体系结构的结构不会适合此任务。实际上,我不确定是否有可能。

也就是说,我看到了两种可能的解决方案:

  1. 创建一个骆驼路线来进行桥接工作,并将其作为WAR部署到Artemis随附的嵌入式Jetty实例。 Camel路由将与Artemis代理在同一JVM中运行,因此不需要其他进程/管理。骆驼易于使用且功能强大。 an example随Artemis一起提供。
  2. 以桥接模式部署Mosquitto代理,以在代理之间移动消息。