Artemis имеет функцию мостового соединения для «основного» протокола, а также универсальную реализацию моста JMS, но он имеет встроенную функциональность no MQTT.Кроме того, я не думаю, что было бы неплохо реализовать это через плагин брокера по двум причинам.Во-первых, плагин действительно должен иметь минимальную задержку, насколько это возможно, так как любая задержка от плагина повлияет на любого другого клиента.Во-вторых, структура архитектуры плагина не поддается этой задаче;на самом деле, я не уверен, что это вообще возможно.
Тем не менее, я вижу два возможных решения:
- Создайте маршрут Camel, чтобы выполнить работу по соединению и развернутьэто как WAR для встроенного экземпляра Jetty, поставляемого с Artemis.Маршрут Camel будет проходить в той же JVM, что и брокер Artemis, поэтому никаких дополнительных процессов / управления не потребуется.Верблюд прост в использовании и чрезвычайно мощный.Существует пример того, как это происходит с Артемидой.
- Развертывание брокера Mosquitto в режиме моста для перемещения сообщений между брокерами.