#spring-integration #esb #apache-servicemix
#spring-интеграция #esb #apache-servicemix
Вопрос:
Я ищу решение EIP / ESB для использования в моем проекте. Первая причина заключается в разделении модулей и разных подсистем, а также в рефакторинге некоторых частей, чтобы их было легко интегрировать с системами сторонних производителей. И в будущем я думаю, что мне понадобится много EIP, таких как фильтрация, разделение и т.д. Я проверил apache camel service mix, spring integration. Я тоже знаю о tibco и mule. Service mix camel предоставляют богатый набор компонентов и протоколов, но разве это не связано с ActiveMQ broker. Что, если в будущем мне понадобится использовать реализацию tibco jms? Интеграция Spring — это ESB или нет? Мне определенно нужно, чтобы некоторые каналы находились в памяти для локального обмена сообщениями JVM между некоторыми модулями и распределялись, когда обмен сообщениями осуществляется в кластере. Кроме того, привязан ли SI к какой-либо реализации jms?
Итак, требования: -Маршрутизация сообщений локальным и распределенным способом -Простое переключение реализации JMS, например, теперь ActiveMQ, после этого может быть tibco -Легкий -Простой -Полный набор стандартных протоколов, компонентов и адаптеров — Мне не понадобится ничего вроде twitter, gae и чего-то подобного
Также может ли SI быть распределенным ESB, подобным ServiceMix? Я использую spring IoC, могу ли я использовать SI с любым другим ESB, таким как Mule? Есть ли какие-либо особенности при использовании Spring SI?
Ответ №1:
Camel не привязан к ActiveMQ.
Camel работает с любым брокером JMS, используя его компонент camel-jms. http://camel.apache.org/jms
Хотя существует расширенный компонент JMS, который был оптимизирован для ActiveMQ http://camel.apache.org/activemq
И да, я думаю, что Camel SMX — это мощная комбинация, которая поддерживает потребности вашей записи. В нем есть все EIP и компоненты, которые вам нужныhttp://camel.apache.org/eip http://camel.apache.org/components
Комментарии:
1. Я думаю, SMX привязан к AMQ? Пока я намерен использовать SI, поскольку он более легкий, и многие вещи поставляются с spring Framework «из коробки». На случай, если мне понадобится автономный ESB, i SMX обеспечивает интеграцию с SI.
2. Вы также можете использовать просто Camel, это платформа интеграции, подобная SI.