ApacheCamel + ActiveMQ для JBOSS Fuse, что является лучшим подходом?

Я имею ApacheCamel + ActiveMQ и работает на работе около 8 различных маршрутов. Это началось хорошо, когда у нас было 2 маршрута. Количество маршрутов растет (в настоящее время 10), и процесс добавления нового маршрута включает обновление кода существующих маршрутов, тестирование, развертывание и т. Д. То, что я действительно хочу, это правда ESB где пакеты / сервисы могут быть установлены, запущены, остановлены или удалены без влияния на другие пакеты / сервисы. Я провел некоторое исследование и JBOSS Fuse кажется правильным выбором для достижения вышеизложенного. У меня есть пара вопросов, и я надеюсь, что вы, ребята, сможете мне помочь с:

  1. Когда начать? Есть ли хороший подобный пример или учебник, которому я могу следовать?
  2. Все маршруты в настоящее время под одним Spring проект. Должны ли они быть разделены на отдельные пакеты (используя Spring-dm)? это одна связка на маршрут
  3. Является ли JBOSS Fuse правильным выбором, чтобы иметь истинное ESB?

1 ответ

Решение

Для выбора в инфраструктуре слэш-контейнера ESB на основе OSGi с использованием Apache Camel ServiceMix является самым старым, затем появился Fuse ESB, который был переименован в Fuse Fabric.

Таким образом, поскольку у вас есть шанс начать все сначала, лучше выбрать Fuse Fabric или версию с открытым исходным кодом Fabric8.

Ознакомьтесь с документацией Fuse Fabric о том, как работают комплекты, функции и профили.

В вашем случае вы будете создавать функции на основе скомпилированных вами пакетов, вы сможете обновлять и развертывать функции независимо друг от друга, а также сможете легко контролировать уровни выпуска всех функций с помощью профили.

например

myapp-profile 1.1
    firstapp-1.0
        bundle1
        bundle2
    secondapp-1.2
        bundle3
        bundle4
    (+configuration)

В ответ на ваши вопросы:

  1. Вот несколько ссылок

http://www.jboss.org/products/fuse/overview/

http://www.jboss.org/products/fuse/resources/

  1. Если вы хотите иметь возможность самостоятельно останавливать, запускать и обновлять ваши маршруты, они должны быть в отдельных пакетах. Вы можете определенно иметь несколько маршрутов в одном пакете, если хотите, но один маршрут для каждого пакета вполне подойдет. Обратите внимание, что Fuse Fabric использования blueprint в качестве структуры DI по умолчанию (которая похожа на Spring, но не то же самое), так как она совместима с OSGi, и я не могу комментировать Spring-dm так как я не использовал это.

  2. Будь то Fuse Fabric это правильный выбор для истинного ESB Это действительно зависит от вас, чтобы решить или оценить с помощью простого доказательства концепции. Другие варианты fabric8 (что по сути то же самое) или решения поставщика, такие как Mule, По моему опыту Fuse Fabric превосходен, хотя это субъективное и личное мнение.

Другие вопросы по тегам