ActiveMQ Артемида и MQTT мост - PullRequest
       20

ActiveMQ Артемида и MQTT мост

0 голосов
/ 30 ноября 2018

Брокер Mosquitto MQTT предлагает функцию для соединения двух брокеров MQTT для публикации и подписки сообщений.Это описано здесь .

Когда какой-либо клиент публикует сообщения для брокера ActiveMQ Artemis, я хочу, чтобы эти сообщения автоматически публиковались в другом брокере MQTT на основе настроенного сопоставления тем.Я хочу знать, возможно ли это через функцию, встроенную в ActiveMQ Artemis, или, возможно, через плагин брокера.

1 Ответ

0 голосов
/ 30 ноября 2018

Artemis имеет функцию мостового соединения для «основного» протокола, а также универсальную реализацию моста JMS, но он имеет встроенную функциональность no MQTT.Кроме того, я не думаю, что было бы неплохо реализовать это через плагин брокера по двум причинам.Во-первых, плагин действительно должен иметь минимальную задержку, насколько это возможно, так как любая задержка от плагина повлияет на любого другого клиента.Во-вторых, структура архитектуры плагина не поддается этой задаче;на самом деле, я не уверен, что это вообще возможно.

Тем не менее, я вижу два возможных решения:

  1. Создайте маршрут Camel, чтобы выполнить работу по соединению и развернутьэто как WAR для встроенного экземпляра Jetty, поставляемого с Artemis.Маршрут Camel будет проходить в той же JVM, что и брокер Artemis, поэтому никаких дополнительных процессов / управления не потребуется.Верблюд прост в использовании и чрезвычайно мощный.Существует пример того, как это происходит с Артемидой.
  2. Развертывание брокера Mosquitto в режиме моста для перемещения сообщений между брокерами.
...