Что такое посреднический двигатель? - PullRequest
2 голосов
/ 25 февраля 2020

Что такое механизм посредничества, как указано в документации для верблюдов (ссылка ниже)?

https://camel.apache.org/manual/latest/faq/what-is-camel.html

Пример варианта использования также был бы очень признателен.

Ответы [ 3 ]

1 голос
/ 26 февраля 2020

Ссылка механизма посредничества в этом контексте происходит от топи c из Интеграция корпоративных приложений и тесно связана с тем, что делает Шаблон посредника GoF - Это инкапсулированная связь между сущностями. В случае EAI посредник / посредник находится между несколькими разнородными системами и выступает в качестве посредника между ними, вместо того, чтобы позволить системам обмениваться данными напрямую.

Посреднический подход в EAI предлагает такие возможности, как

  1. Уменьшенная связь между системами. Например, вам не нужно изучать и реализовывать устаревший протокол мэйнфреймов в современных системах только потому, что вы хотите получить некоторые данные из основных фреймов. Посреднический механизм, такой как Apache Camel, может общаться REST по HTTPS на одном конце и некотором протоколе мэйнфрейма archai c на другом конце.
  2. Простота миграции: после того, как область мэйнфреймов заменена чем-то другим, вы можете просто изменить уровень-посредник, чтобы что-то с этим сделать, вместо того, чтобы модифицировать несколько уязвимых систем, которые раньше общались с мэйнфреймами.
  3. Доступ к одному ресурсу / услуге по нескольким каналам. Допустим, у вас есть старая система, которая в настоящее время выполняет SOAP по HTTP, но вы хотели бы предложить REST с JSON полезной нагрузкой некоторым из ваших новых клиентов. Вместо того, чтобы строить совершенно новые системы заранее для этой цели, вы можете использовать Apache Camel в качестве посредника, и он будет принимать JSON полезных нагрузок на одном конце и SOAP на другом конце. Тот, кто хочет говорить JSON, может go через верблюда, а тот, кто хочет сделать SOAP, может продолжать прямую связь с прежней системой. Когда-нибудь, если какой-то гипотетический протокол FooBar станет популярным, и если Apache Camel предоставит вам компонент FooBar, ваши пользователи, которым требуется поддержка FooBar, могут быть направлены через Camel в систему, которая все еще говорит SOAP.

Все это подробно обсуждается на сайте и в книге Enterprise Integration Patterns . Apache Верблюд реализует множество моделей грузовиков, как описано в Книге EIP. Я надеюсь, что этот ответ помог вам понять роль посредника Apache, которую Camel мог бы сыграть в корпоративных ИТ-экосистемах.

0 голосов
/ 11 марта 2020

Apache верблюд является своего рода промежуточным ПО ESB. Посредничество в отношении верблюда будет означать следующее

преобразование формата данных: Если приложение A говорит JSON, а приложение B понимает формат CSV. Вы можете использовать Apache Camel для перевода JSON в CSV.

Преобразование протокола: Если приложение A знает только вызов веб-сервисов, но приложение B предпочитает чтение данных из очереди сообщений. Вы можете использовать Apache Camel для получения этих данных, открыв веб-сервис, а затем отправив их в очередь для использования приложением B.

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

Разъемы: Многие ESB теперь имеют встроенные разъемы для прямого подключения к приложениям на базе ERP или SAS. Например, разъем кафки. https://camel.apache.org/blog/Camel-Kafka-connector-intro/

0 голосов
/ 25 февраля 2020

От Camel в действии

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

В этой ссылке https://camel.apache.org/manual/latest/faq/what-is-camel.html обозначают проекты, которые могут быть компонентами верблюжий маршрут туда и обратно, откуда можно отправлять и использовать сообщения (https://camel.apache.org/components/latest/activemq-component.html, https://camel.apache.org/components/latest/cxf-component.html).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...