Учебники

MuleSoft — Введение в Mule ESB

ESB расшифровывается как Enterprise Service Bus, который в основном представляет собой инструмент промежуточного программного обеспечения для интеграции различных приложений вместе в инфраструктуру, подобную шине. По сути, это архитектура, разработанная для обеспечения единообразных средств перемещения работы среди интегрированных приложений. Таким образом, с помощью архитектуры ESB мы можем соединять различные приложения через коммуникационную шину и позволять им обмениваться данными, не завися друг от друга.

Внедрение ESB

Основным направлением архитектуры ESB является разделение систем друг от друга и обеспечение их устойчивой и управляемой связи. Реализация ESB может быть осуществлена ​​с помощью «Bus» и «Adapter» следующим образом:

  • Концепция «шины», которая достигается с помощью сервера обмена сообщениями, такого как JMS или AMQP, используется для отделения различных приложений друг от друга.

  • Понятие «адаптер», отвечающее за связь с внутренним приложением и преобразование данных из формата приложения в формат шины, используется между приложениями и шиной.

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

Понятие «адаптер», отвечающее за связь с внутренним приложением и преобразование данных из формата приложения в формат шины, используется между приложениями и шиной.

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

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

Руководящие принципы ESB

Мы можем назвать эти принципы основными принципами интеграции. Они заключаются в следующем —

  • Оркестровка — интеграция двух или более сервисов для достижения синхронизации между данными и процессами.

  • Преобразование — Преобразование данных из канонического формата в специальный формат приложения.

  • Транспортировка — обработка протокола согласования между форматами, такими как FTP, HTTP, JMS и т. Д.

  • Посредничество — предоставление нескольких интерфейсов для поддержки нескольких версий службы.

  • Нефункциональная согласованность — обеспечение механизма управления транзакциями и безопасности.

Оркестровка — интеграция двух или более сервисов для достижения синхронизации между данными и процессами.

Преобразование — Преобразование данных из канонического формата в специальный формат приложения.

Транспортировка — обработка протокола согласования между форматами, такими как FTP, HTTP, JMS и т. Д.

Посредничество — предоставление нескольких интерфейсов для поддержки нескольких версий службы.

Нефункциональная согласованность — обеспечение механизма управления транзакциями и безопасности.

Нужен ESB

Архитектура ESB позволяет нам интегрировать различные приложения, где каждое приложение может взаимодействовать через него. Ниже приведены некоторые рекомендации по использованию ESB.

  • Интеграция двух или более приложений. Использование архитектуры ESB выгодно, когда необходимо интегрировать два или более сервисов или приложений.

  • Интеграция большего количества приложений в будущем. Предположим, что если мы хотим добавить больше сервисов или приложений в будущем, это можно легко сделать с помощью архитектуры ESB.

  • Использование нескольких протоколов — в случае, если нам нужно использовать несколько протоколов, таких как HTTP, FTP, JMS и т. Д., ESB является правильным вариантом.

  • Маршрутизация сообщений — мы можем использовать ESB в случае, если нам требуется маршрутизация сообщений на основе содержимого сообщения и других аналогичных параметров.

  • Состав и потребление — ESB можно использовать, если нам нужно публиковать услуги для состава и потребления.

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

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

Использование нескольких протоколов — в случае, если нам нужно использовать несколько протоколов, таких как HTTP, FTP, JMS и т. Д., ESB является правильным вариантом.

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

Состав и потребление — ESB можно использовать, если нам нужно публиковать услуги для состава и потребления.

Интеграция P2P против интеграции ESB

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

P2P интеграция

Жесткость является наиболее очевидным недостатком интеграции точка-точка. Сложность увеличивается с увеличением количества соединений и интерфейсов. Недостатки интеграции P-2-P приводят нас к интеграции ESB.

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

ESB Интеграция

Для управления интеграцией ESB имеет следующие два компонента:

  • Реестр сервисов — Mule ESB имеет Реестр / репозиторий сервисов, где публикуются и регистрируются все сервисы, предоставляемые в ESB. Он действует как точка обнаружения, откуда можно использовать услуги и возможности других приложений.

  • Централизованное администрирование — как видно из названия, оно предоставляет представление о транзакционных потоках производительности взаимодействий, происходящих внутри ESB.

Реестр сервисов — Mule ESB имеет Реестр / репозиторий сервисов, где публикуются и регистрируются все сервисы, предоставляемые в ESB. Он действует как точка обнаружения, откуда можно использовать услуги и возможности других приложений.

Централизованное администрирование — как видно из названия, оно предоставляет представление о транзакционных потоках производительности взаимодействий, происходящих внутри ESB.

Функциональность ESB — аббревиатура VETRO обычно используется для обобщения функциональности ESB. Это следующим образом —

  • V (Проверка): как видно из названия, оно проверяет правильность схемы. Требуется проверяющий синтаксический анализатор и обновленная схема. Одним из примеров является XML-документ, подтверждающий актуальную схему.

  • E (Enrich): добавляет в сообщение дополнительные данные. Цель состоит в том, чтобы сделать сообщение более значимым и полезным для целевой службы.

  • T (Transform): преобразует структуру данных в канонический формат или из канонического формата. Примерами являются конвертация даты / времени, валюты и т. Д.

  • R (Маршрутизация): он будет маршрутизировать сообщение и действовать как привратник конечной точки службы.

  • O (Operate): основная задача этой функции — вызывать целевой сервис или взаимодействовать с целевым приложением. Они бегут в бэкэнд.

V (Проверка): как видно из названия, оно проверяет правильность схемы. Требуется проверяющий синтаксический анализатор и обновленная схема. Одним из примеров является XML-документ, подтверждающий актуальную схему.

E (Enrich): добавляет в сообщение дополнительные данные. Цель состоит в том, чтобы сделать сообщение более значимым и полезным для целевой службы.

T (Transform): преобразует структуру данных в канонический формат или из канонического формата. Примерами являются конвертация даты / времени, валюты и т. Д.

R (Маршрутизация): он будет маршрутизировать сообщение и действовать как привратник конечной точки службы.

O (Operate): основная задача этой функции — вызывать целевой сервис или взаимодействовать с целевым приложением. Они бегут в бэкэнд.

Шаблон VETRO обеспечивает общую гибкость интеграции и гарантирует, что только согласованные и проверенные данные будут маршрутизироваться по всему ESB.

Что такое Mule ESB?

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

  • Community Edition
  • Enterprise Edition

Преимущество Mule ESB заключается в том, что мы можем легко перейти с сообщества Mule ESB на Mule ESB enterprise, поскольку оба выпуска построены на базе общего кода.

Особенности и возможности Mule ESB

Мул ESB обладает следующими характеристиками:

Он имеет простой графический дизайн перетаскивания.

Mule ESB способен визуально отображать и преобразовывать данные.

Пользователь может получить возможность установки сотен предварительно сертифицированных разъемов.

Централизованный мониторинг и администрирование.

Это обеспечивает надежные возможности обеспечения безопасности предприятия.

Он предоставляет возможность управления API.

Существует безопасный шлюз данных для облачной / локальной сети.

Он предоставляет реестр сервисов, в котором публикуются и регистрируются все сервисы, представленные в ESB.

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

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