Java-сообщения: разница между ActiveMQ, Mule, ServiceMix и Camel

Я новичок в Messaging и хочу узнать разницу между ActiveMQ, Mule, ServiceMix и Camel

Кто-нибудь знает, как каждый из этих продуктов отличается?

Спасибо заранее!

EDIT: Также хотел бы знать любое хорошее место/ресурс, чтобы узнать эти вещи.

Ответ 1

ActiveMQ - это брокер сообщений, который реализует JMS API и поддерживает несколько межъязыковых клиентов и сетевых протоколов. Это позволяет вам реализовывать очереди или темы и писать слушателей или подписчиков для ответа на события очереди.

Mule и ServiceMix - это ESB с открытым исходным кодом (корпоративная сервисная шина). ESB обладает возможностями, выходящими за рамки JMS: организация очередей является ключевым фактором, но также важны преобразования, маршрутизация, ведение журналов, безопасность и т.д.

Apache Camel - это реализация шаблонов в корпоративных шаблонах интеграции. Он может использовать JMS и другие компоненты, чтобы реализовать идеи из этой книги.

JMS является фундаментом для других технологий, например, JDBC является основой для Hibernate, iBatis и т.д.

JMS - это API-интерфейс Java, а также спецификация и TCK (часть Java EE). ActiveMQ является частной реализацией этого.

Camel может использовать ActiveMQ (а Camel входит в состав брокера ActiveMQ, поэтому вы можете легко маршрутизировать JMS и другие компоненты, поддерживаемые Camel).

Camel не использует Mule или ServiceMix напрямую; хотя ServiceMix использует Camel в качестве предпочтительного механизма маршрутизации и реализации EIP. У верблюда есть тонна различных компонентов, которые используют различные технологии.

Ответ 2

Сначала позвольте определить

JMS является J Ava M essaging S Спецификация протокола е р в.
ESB Е Nterprise С е р Б с нами.
ЖБИ является J AVA Б usiness я ntegration.

Теперь мы можем ответить подробнее:

Apache ActiveMQ является реализацией вышеуказанных JMS (J Ava M essaging С й р).

Apache Camel - это механизм маршрутизации сообщений, реализующий шаблоны корпоративной интеграции.
Он предоставляет множество предопределенных компонентов.
Одним из ключевых компонент поддерживает JMS (J AVA M essaging С е р).

Apache ServiceMix является реализацией вышеуказанного ESB (E Nterprise С е р Б с нами)
совместим с JBI (J AVA B usiness я ntegration) спецификации.
Он также предоставляет множество инфраструктурных функций, недоступных в Camel (например, поддержка OSGI-пакетов).
SM интенсивно использует Camel.

Mule еще одна реализация ESB (E Nterprise С е р Б с нами), но не связанные с семьей Карамель /ServiceMix.

Ответ 3

Apache Service Mix:: Его ESB (Enterprise Service Bus), контейнер JBI и платформа интеграции.

Apache Camel: интеллектуальный механизм маршрутизации и посредничества, который реализует EIP (корпоративные шаблоны интеграции).

Apache ActiveMQ: его брокер сообщений, который реализует JMS.

Ответ 4

Mule - это служебная шина Enterprise, обеспечивающая комплексное интеграционное решение.

ActiveMQ - это брокер сообщений для сообщений о очередности между абонентом и получателем.

ServiceMix также является ESB, то есть Enterprise Service Bus

Ответ 5

Camel дает вам возможность определять правила маршрутизации и посредничества на разных языках. Mule и SeriviceMix - ESB. ActiveMQ - это служба обмена сообщениями.

Ответ 6

Apache Camel - это реализация EIP (шаблоны интеграции предприятия)

ServiceMix - это продукт, который соответствует принципам ESB в среде SOA.

Активный MQ не хуже любой другой реализации JMS API

Mule также является ESB