Автор оригинала: Pankaj Kumar.
Что такое Мул ESB?
Mule, платформа выполнения и удобная корпоративная служба на основе Java (ESB), которая позволяет разработчикам легко создавать высокопроизводительные, безопасные, многопротокольные взаимодействия между гетерогенными системами и службами. Это позволяет легко интегрировать существующие системы, независимо от различных технологий, используемых приложениями. Обмен данными между приложениями осуществляется с помощью различных форматов обмена сообщениями.
Ниже приведены мощные возможности Mule ESB:
- Преобразование данных
- Посредничество в Обслуживании
- Создание сервиса и хостинг
- Маршрутизация сообщений
Преимущества мула ESB
- Легкий, но масштабируемый, позволяющий вам начинать с малого и подключать больше приложений в будущем.
- Хорошо подходит для сценариев, где требуется слабая связь, надежность и масштабируемость.
- Он поддерживает более 30 протоколов и технологий.
- Платформа Mule поощряет многократное использование компонентов; нет необходимости запускать или добавлять код, специфичный для Mule, в любой компонент. Кроме того, бизнес-логика отделена от логики обмена сообщениями.
- Mule не накладывает никаких ограничений на дизайн при выборе формата обмена сообщениями. Он варьируется от SOAP до двоичных файлов изображений.
Архитектура Mule ESB
Структура сообщения Мула
Это формат данных, который внутренне используется Mule для связи между различными приложениями с помощью одного или нескольких потоков.
Структура сообщения Мула
В основном он состоит из двух основных частей:
- Заголовок — это не что иное, как метаданные сообщения.
- Полезная нагрузка — это фактическое деловое сообщение.
Объект сообщения используется для оболочки сообщения Mule вместе с некоторыми дополнительными атрибутами, такими как Вложение, Переменная и Полезная нагрузка исключения, которые могут появляться не в каждом случае.
Метаданные представлены свойствами, которые предоставляют полезную информацию для облегчения обработки и предотвращения ошибок, когда сообщение поступает в новый поток или передается в другое приложение. Свойства и переменные, содержащиеся в объекте Mule, сохраняют данные в формате ключ-значение.
Свойства имеют две основные области:
- Входящие Свойства:
- Они являются неизменяемыми, автоматически генерируемыми источником сообщений.
- Они предотвращают скремблирование форматов данных и любые другие манипуляции в жизненном цикле сообщений.
- Область действия Inboundproperties ограничена только потоком; как только сообщение переходит в другой поток, его входящие свойства исчезают.
- Пример языка выражения мула (MEL):
#[message.outboundProperties]
- Исходящие Свойства:
- Они изменчивы и могут быть установлены Мулом, или пользователь может изменить их, используя трансформаторные элементы в потоке.
- Они могут стать связанными свойствами, когда сообщение передало исходящую конечную точку одного потока входящей конечной точке другого потока.
- В одном случае—если сообщение передается любому потоку-ссылка, то исходящие свойства остаются такими же, как исходящие свойства.
- Пример MEL:
#[message.inboundProperties]
Переменные имеют три области действия:
- Переменные потока— могут быть доступны в пределах одного потока.
- Переменные сеанса— применяются во всех потоках в одном приложении.
- Переменные записи— применяются только к записям, обработанным в пакетном режиме
Полезная нагрузка сообщения содержит данные, которые обрабатывает приложение Mule. Полезная нагрузка меняется во время ее прохождения через различные потоки. Он устанавливается, обогащается или преобразуется в новый формат различными обработчиками сообщений в потоке Мула.
Пример MEL для извлечения полезной информации: #[полезная нагрузка]
Настройка времени выполнения Mule
- Издание Mule Runtime Community (CE) или Enterprise (EE) доступно здесь:
Издание Mule Runtime Community (CE) или Enterprise (EE) доступно здесь:
- Для установки Anypoint Studio, среды разработки для создания приложений интеграции, нажмите здесь:
Для установки Anypoint Studio, среды разработки для создания приложений интеграции, нажмите здесь:
Проект Anypoint Studio Hello World
Давайте шаг за шагом создадим приложение, которое возвращает браузеру сообщение “Привет, Мул”, когда вы заходите в службу.
- Запустите платформу Anypoint Studio, перейдя в каталог на локальном компьютере, где вы установили.
- Создайте новый проект Mule, либо нажав ссылку “Создать проект”, появившуюся на экране приветствия, либо перейдя в Файл > Создать > Проект Mule .
- Введите название вашего проекта в разделе “Название проекта”.
- Нажмите кнопку Готово, и вы увидите экран студийного холста следующим образом:
- В нижней части холста есть три вкладки—Поток сообщений, XML конфигурации и Глобальные элементы. Поток сообщений и XML конфигурации-это две вкладки для отображения или редактирования потока Mule в визуальном и xml-формате соответственно. Вкладка Глобальные элементы содержит свойства для элементов конфигурации, имеющих глобальную область действия.
- Выберите HTTP-соединитель из палитры Mule и перетащите его на холст.
- Перейдите на панель конфигурации прослушивателя HTTP – нажмите на зеленый символ плюс в разделе Общие настройки в HTTP – соединителе- и введите значения хоста и порта.
- Найдите заданную полезную нагрузку и перетащите трансформатор в поток.
- Нажмите “Установить трансформатор полезной нагрузки” и установите поле значения как “Привет, Мул”.
- Перетащите регистратор и установите значение полезная нагрузка , полученное от преобразователя полезной нагрузки Set, в сообщение.
- После подключения всех компонентов Mule ваш поток в формате XML выглядит следующим образом:
- Чтобы протестировать ваше приложение — запустите его как Приложение Mule . Вы можете просмотреть журналы консоли, как показано ниже, чтобы убедиться, что приложение успешно развернуто и запущено.
- Запустите браузер и нажмите на адрес
https://localhost:8081/message
. Вы можете увидеть ответ как “Привет, Мул”.
Студия Anypoint Создаст Новый Проект
Структура проекта Anypoint Studio Hello World
HTTP-соединитель Anypoint Studio Hello Mule
Настройки HTTP-соединителя Mule ESB
Конфигурации прослушивателя HTTP Mule ESB
Полезная нагрузка набора сообщений Мула
Значение полезной нагрузки сообщения Мула
Регистратор Anypoint Studio
Anypoint Studio Запускается Как Приложение Mule
Веб-приложение Mule Hello World