Ява сообщения: разница между в частности, ActiveMQ, мул, верблюд и ServiceMix в
Я новичок в обмене сообщениями и хочу знать разницу между ActiveMQ
, Mule
, ServiceMix
и Camel
Кто-нибудь знает, чем отличается каждый из этих продуктов?
Заранее спасибо !
EDIT: также хотел бы знать любое хорошее место/ресурс, чтобы узнать эти вещи.
6 ответов:
ActiveMQ-это брокер сообщений, который реализует API JMS и поддерживаетколичество кросс-языковых клиентов и сетевых протоколов . Он позволяет реализовать очереди или темы и писать слушателей или подписчиков для ответа на события очереди.
Mule и ServiceMix - это ESB с открытым исходным кодом (enterprise service bus). ESB имеет возможности, выходящие за рамки JMS: очередь-это ключ, но также и преобразование, маршрутизация, ведение журнала, безопасность и т. д.
Apache Camel - это реализация паттерны вкорпоративных интеграционных паттернах . Он может использовать JMS и другие компоненты , чтобы поместить идеи из этой книги на место.
JMS является фундаментальной для других технологий, как JDBC является основой для Hibernate, iBatis и т.д.
JMS-это Java API, спецификация и TCK (часть Java EE). ActiveMQ-это конкретная его реализация.
Camel может использовать ActiveMQ (а Camel встроен в брокер ActiveMQ, так что вы можете легко проложить маршрут от JMS для других компонентов верблюд поддерживает).
Camel не использует Mule или ServiceMix напрямую; хотя ServiceMix использует Camel в качестве предпочтительного механизма маршрутизации и реализации EIP. Верблюд действительно имееттонну различных компонентов , хотя они используют различные различные технологии.
JMS - это спецификация протокола обмена сообщениями Java.
ActiveMQ является реализацией вышеизложенного.
Camel - это механизм маршрутизации сообщений, реализующий Шаблоны интеграции предприятия. Он предоставляет множество предопределенных компонентов. Один из его ключевых компонентов поддерживает JMS.
ServiceMix - это реализация ESB, совместимая со спецификацией Jbi (Java Business Integration). Он также предоставляет множество инфраструктурных функций, недоступных в Camel (например, поддержка пакетов служб OSGI). SM интенсивно использует верблюда.
Mule - это еще одна реализация ESB, но не связанная с семейством Camel/ServiceMix.
Apache Service Mix :: Это ESB (Enterprise Service Bus) , контейнер JBI и платформа интеграции.
Apache Camel: интеллектуальный механизм маршрутизации и посредничества, реализующий EIP (Enterprise Integration Patterns).
Apache ActiveMQ: это брокер сообщений, реализующий JMS.
Mule-это корпоративная служебная шина, обеспечивающая сквозную интеграцию.
ActiveMQ-это посредник сообщений для организации очереди сообщений между абонентом и получателем.
ServiceMix также является ESB, то есть служебной шиной предприятия