Вопрос

Привет,
Если у нас есть Apache верблюд, зачем использовать другие решения, такие как Apache ServiceMix и Mule?
Есть ли что-то верблюд Apache, не может сравниться с этими продуктами?
Когда использовать MULE / SERVICEMIX и при использовании верблюда?

Это было полезно?

Решение

Apache Camel - это библиотека, которая реализует шаблоны интеграции предприятия (EIP). Хотя он может использовать весну в качестве своей структуры IOC, она даже не зависит от весны, поэтому она полностью не зависит от платформы. Это «просто» библиотека. Таким образом, вы можете запустить его любую среду JVM, например простой JVM, сервлет, EJB, OSGI. Это не приносит каких-либо из преимуществ (или накладных расходов) такого мула контейнера. На мой взгляд, у чистой отделения проблем в этой области.

Мул также может быть встроен в различные среды, но я думаю, что Mule имеет как преимущества, так и недостатки соединения их библиотеки EIP к их контейнеру. Когда вы развертываете мул внутри сервлета или среды EJB, вы действительно хотите нести все этот багаж туалетного контейнера? Я не эксперт на мул, и я думаю, что вы, вероятно, можете провести относительно скромное количество усилий и очистить некоторые из резервных возможностей. (Примечание. Это не плохая возможность во всех случаях, это просто избыточно, если вы запустите встроенные внутри другого контейнера.)

Apache ServiceMix - это контейнер OSGI, который использует верблюд для реализации EIP в качестве основы ESB. Хотя ServiceMix исторически начался с его корней в JBI, он отошел от JBI и превратился в (IMO) приятную слоистую архитектуру, сочетающую в себе лучшие породы Apache CXF, верблюда и ActiveMQ в контейнере OSGI. Основное значение здесь не на самом деле обслуживание и его поддержка JBI, но базовый контейнер OSGI стандартный В сочетании к проверенному Apache Transports, как CXF для веб-сервисов и Activemq для JMS. OSGI - это зрелый стандарт, который предлагает контейнер, который обращается к тому же типам «DLL» черт возьми, которая страдала Microsoft до появления .NET .NET. В то время как ни .Net, ни Osgi не решают необходимую сложность базовой проблемы, они, по крайней мере, обеспечивают средства для его решения. OSGI имеет и другие преимущества, но с точки зрения выбора продукта стандарты На основе контейнера является первичным, и его существенная особенность, которую Mule (и Java в целом) не рассматривается, является управление зависимостями.

Некоторые важные вещи следует отметить в сравнении мула с сообществами Apache. Мул понравился Redhat в том смысле, что, хотя это лицензия с открытым исходным кодом, это на самом деле не на мой взгляд открытое сообщество. Любой может участвовать в Apache, тогда как Mulesoft владеет сообществом мул и финальной дорожной картой. Во-вторых, хотя сообщество мул, возможно, довольно активно, я думаю, что сообщество Apache намного больше (и, естественно, так как это не закрытое сообщество). Оба подхода имеют как плюсы, так и минусы. Один положительный к подходу Apache состоит в том, что есть несколько поставщиков для ESB на основе верблюда, CXF, ActiveMQ и OSGI. Например, Talend предлагает ESB в том же основных технологиях без истории ServiceMix JBI. Это имеет как плюсы, так и минусы в сообществе Apache, но реальная точка состоит в том, чтобы выделить разницу между Apache и Mule. Вы не найдете многопользовательские поставщики в сообществе Мул. Итак, IMO Apache ESB, как Talend или ServiceMix, является более широким и более инклюзивным, и в конечном итоге конкурентное сообщество, чем закрытое сообщество, как Мул.

Эд Ост

Другие советы

Сейчас 2016 год и многое изменилось, поскольку вопрос был первоначально спросин, поэтому я хотел бы пересмотреть его для новых зрителей.

Стратегически говоря

  • Апача верблюда остался верным своим корням и не развивался в тяжеловесную и не полностью подданную платформу времени выполнения. Это универсальный и модульный, и может работать:

    1. Встроенный В любом виде контейнера Java (сервлетный контейнер, сервер приложений, весенний ботинок).
    2. Автономный как процесс Java.
    3. Внутри окружающей среды ОСГИ (Apache Karaf.).
  • Apache верблюд продолжал развиваться и получить тягу и активность ежемесячно, как изображено графиком под этим моментом, который я извлек из Openhub.. Отказ У USERBASE также продолжает увеличиваться.

Apache Camel Contributors per Month

  • В 2012, Красная шляпа приобрела Fusesource, Один из главных промоторов и разработчиков за Apache верблюда, ActiveMQ, Servicemix и CXF. Несколько коммутаторов и членов PMC теперь работают Red Hat для работы на верблюде Apache.

  • MULE ESB предложений Две версии их продукта: Сообщество (бесплатно под лицензией CPAL) и Предприятие (оплаченный). Они определяют их Сообщество Версия как:

Идеально подходит для оценки или предварительного производства.

=> Означает, что вы должны приобрести платная подписка на предприятие Для использования производства.

  • На самом деле, Mule ESB сообщество издание распространяется под Лицензия CPAL. Отказ Это означает, что если вы все еще решаете использовать эту версию, мул Требует этого:

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

    • Если ваше развертывание MULE ESB доступна через сеть (он всегда будет, поскольку это интеграционная платформа!) Вы также должны сделать источник вашего развертывания, доступного для того, кто доступа к нему.

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

  • Последний, но тем не менее важный; Возможно самая важная часть. Вот что Google Trends должен сказать о MULE ESB против Apache верблюда. Отказ Обратите внимание, что я использую новый семантический темы измерение для более высокой точности, а не стандарта Запрос ключевых слов. Отказ Таким образом, мы не измеряем популярность животных (мул против верблюда), а программного обеспечения! Интерпретация: Муль тяжело настроен с 2007 до 2011 года, а верблюд Apache Trade. С 2011 года Мул поставил, а верблюд Apache удерживает тренды у здоровья!

Mule vs Camel in Google Trends

Техническая эволюция Apache верблюда

Просто хотел дать вам некоторые функциональные метрики на эволюцию верблюда Apache с 25 сентября 2010 года, когда вы изначально задавали вопрос. Это было дерево источника в этот момент во времени.

  • Затем верблюд имел 88 компонентов, теперь он имеет 220 компонентов, включая интеграции с Facebook, Twitter, Salesforce, Apache lignite., Apache Cassandra, AWS, Apache Kafka., Монгодб, Apache Spark. и т.п.
  • Многие, многие технические улучшения: Async Mar Rountinging Engine, история сообщений, автоматический выключатель, многие улучшения и усовершенствования для EIP, таких как агрегация, расщепление, динамическая маршрутизация и т. Д.
  • Экосистема выросла теперь также включать Востребование Для мониторинга и управления, ткань8. для развертывания и т. Д.
  • С тех пор больше, чем 5500 билетов были решены, включая новые функции, улучшения, ошибки и т. Д.
  • И многое, многое другое!

Последние ноты

Обе продукты сильно развивались за последние 5,25 лет! Однако из-за разницы в лицензиях и природе сообщества MULE ESB и Apache верблюда, я не думаю, что они больше сопоставимы друг к другу.

Apache верблюд полностью открыт исходный код ❤️, а сообщество MULE ESB требует, чтобы пользователи приписали Mulesoft и публиковать исходный код программного обеспечения, который использует MULE. Лицензия программного обеспечения Apache является Бизнес Лицензия: Вы свободны использовать верблюд без аспирантов, ни каких-либо других требований. Действительно Бесплатно как в пиве!

Надеюсь, что это отражение за последние годы помогает новым зрителям! :)


Отказ от ответственности: Я являюсь членом коммиттера и PMC в проекте верблюда Apache.

Мой блог пост отвечает именно этот вопрос: http://www.kai-waehner.de/blog/2011/06/02/when-to-use-apache-camel/ => Apache верблюд - это легкая структура интеграции, сервопривод и так далее, являются полными ESP.

Верблюд - это посреднический двигатель, в то время как MULE - это платформа интеграции света. Разница состоит в том, что MULE предлагает все возможности ESB, включая контейнер для развертывания приложений, отдых и веб-сервисов. MULE может быть встроена таким же верблюдом, чтобы позволить разработчикам приложений встроить там код приложения с их интеграционным кодом. Оба плотно интегрируются с пружиной.

Мул не использует JBI по причинам И теперь, когда спецификация JBI была распущена (без рабочей группы, принадлежащей Oracle, которая прошла на JBI Spec изначально), нет хорошей профессиональной или технической причины для использования JBI.

Есть несколько записей FAQ в Apache верблюда, который пролил свет на этоhttp://camel.apache.org/faq.

И коллекция ссылок в Apache верблюдаhttp://camel.apache.org/articles.html.

Есть некоторые ссылки, где люди в обществе разговаривают и сравнивают верблюд к другим проектам.

Клаус, есть несколько ошибок в верблюде FAQ верблюда, неудивительно, что никто из них в нашу пользу :)

  • Модель UMO в муле больше не в муле. Мы начинаем отходить от этой модели в MULE 2, и она была полностью изменена в MULE 3. Теперь у нас есть очень простая модель процессора сообщений, которая делает ваше утверждение об этом избыточным
  • У Мула было явному преобразованию типа в течение нескольких лет, это не дифференциатор для верблюда
  • Мул лицензирован под Оси утвержден лицензия CPAL 1.0. Отказ Это лицензия с открытым исходным кодом, а не коммерческая. Пожалуйста, обновите это как можно скорее

Сначала вам нужно понимать, что Service Mix подобна контейнеру, которое может запустить код верблюда Apache, и MULE ESB - это отдельный продукт сам по себе

Может быть много различий, которые вы можете обеспечить между продуктами ESB.

Вы должны знать несколько вещей, прежде чем смотреть в дифференциацию. Они есть

  1. Как развивается продукты
  2. Его лицензирование
  3. Особенности его поддержки
  4. Открытый источник или нет
  5. Если источник открытого источника может быть изменен и использоваться и так далее.

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

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

  1. Поддержка сообщества
  2. Стек изделия
  3. Расширяемость с точки зрения изменения вашего собственного кода
  4. Изучение - способность и удобство использования
  5. Поддержка продукта при покупке как предприятие

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

Когда дело доходит до Apache верблюда или другой ESB. Разница, которая сделает, являются

  1. Количество транспорта
  2. Apache верблюд, обеспечивающий вам разнообразие DSL по поводу мула, а другие - это то, что у них нет нескольких DSL, как в верблюде.
  3. Мул в своем стеке продукта содержит управление API и в доме облачных разъемов, где в качестве Apache Camel является структурой, когда предохранитель ESB учитывается во внимание, что стек JBOSS предоставляет достойное количество других продуктов, которые могут дополнить ваш выбор.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top