Терминология корпоративной сервисной шины

StackOverflow https://stackoverflow.com/questions/768492

  •  12-09-2019
  •  | 
  •  

Вопрос

Может ли кто-нибудь объяснить на уровне начального-среднего уровня терминологию «автобус», «транспорт» и «конечная точка» в контексте служебный автобус предприятия?Я разработчик C# с нескольколетним опытом работы, но только начинаю работать с ESB.

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

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

Решение

Позвольте мне попытаться разъяснить вам эти термины:

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

  • Маршрутизация.Сообщения могут направляться в разные службы в зависимости от содержимого сообщения или спецификации конечной точки.
  • Преобразования сообщений/посредничество между различными форматами
  • Преобразование транспортного протокола.ESB должен быть в состоянии плавно интегрировать приложения, которые используют различные транспортные протоколы (JMS, HTTP/S, Pure TCP и т. Д.)
  • Улучшение сообщения.Сообщения могут быть дополнены недостающими данными перед дальнейшей обработкой.
  • Безопасность
  • Управление и мониторинг

Эти функциональные возможности предоставляются службами, работающими в рамках ESB.Службы соединяются друг с другом через конечные точки - единые, уникальные «адреса».Сообщения, отправляемые между конечными точками, используют унифицированный транспорт (метод/протокол, который инкапсулирует полезную нагрузку сообщения).Приложению, которое изначально использует другой транспорт, необходимо подключиться к ESB через подходящий адаптер — сервис, который обеспечит необходимое преобразование транспорта.Таким образом, приложения, использующие ESB, отделены друг от друга и им не требуется самостоятельно выполнять преобразования.

Конечно, это лишь очень краткие описания терминов.Помните, что Enterprise Service Bus — это всего лишь обобщающее слово для конкретного типа архитектуры (или концепции), но оно никоим образом не стандартизировано.Поэтому конкретные реализации могут сильно отличаться друг от друга.Если вас интересует стандартизированный ESB, вы можете взглянуть на JBI (Java Business Integration).Доступно несколько реализаций JBI с открытым исходным кодом, среди них Apache СервисМикс, Мул, OpenESB.Очень хорошее введение в технологии ESB представлено в "ESB с открытым исходным кодом в действии"Книга, изданная Мэннингом.

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

Я бы порекомендовал просмотреть ресурсы, связанные с интеграцией корпоративных приложений (EAI), которая вращается вокруг ESB и различных моделей и шаблонов, используемых для интеграции решений.Подумайте, что это GoF для архитектур ESB:

http://www.enterpriseintegrationpatterns.com/

и

http://www.enterpriseintegrationpatterns.com/toc.html

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top