JBoss Fuse - Введение в ESB

В этой главе мы начнем с основ Enterprise Service Bus. Ниже приводится подробное объяснение ESB, а также его преимущества и недостатки, а также пара диаграмм для облегчения понимания.

Что такое ESB?

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

В корпоративном мире мы разрабатываем решения для многих вещей. Эти решения могут использовать разные технологии и разные форматы данных. Совместное использование этих решений становится затруднительным из-за различий в совместимости коммуникаций или формата данных в этих технологиях. Поэтому нам нужна технология, которая позволитloosely coupled integration между этими различными решениями.

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

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

Проблема интеграции

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

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

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

Почему ESB?

Ниже приведены несколько пунктов, объясняющих, почему Enterprise Service Bus так важен.

  • ESB стремится упростить проблему интеграции с различными совместимыми приложениями.

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

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

  • ESB отвечает за перевод сообщений в / из общего формата и их маршрутизацию по назначению.

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

SOA и ESB?

SOA и ESB обычно используются как взаимозаменяемые, но они совершенно разные.

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