Моя идея - использовать верблюда для развязки модулей. Для поддержки масштабируемости и отработки отказа мне интересно, рекомендуется ли использовать следующую архитектуру?
У меня есть два приложения со встроенными приложениями Camel AppCamel1 и AppCamel2. Тогда у меня есть отдельные верблюжьи узлы Camel1 и Camel2.
AppCamel1 будет иметь маршрут с отказоустойчивостью / балансировкой нагрузки для Camel1 и Camel2. Таким образом, если, например, Camel1 дает сбой, Camel2 используется для восстановления после отказа.
Camel1 и 2 будут выполнять вызов REST с компонентом http, например. Также будет запрос-ответ от AppCamel1 до camel1 или 2.
Это правильный сценарий?
Что я должен использовать для соединения различных экземпляров Camel (AppCamel1 с Camel1 или 2)? (Я хотел бы знать, возможно ли избежать другого компонента, такого как jms-сервер в середине)
Спасибо!
Отредактировано после ответа Бодая
REST звонки с Camel1 / 2. Я хотел бы соединить AppCamel1 / 2 с Camel1 / 2 и посмотреть, смогу ли я избежать чего-то промежуточного. Я думаю, что mina - это возможность или даже http, но в этом случае AppCamel1 и AppCamel2 должны знать Camel1 / 2, что не очень хорошо.