Сервисная шина предприятия


Сервисная шина предприятия (англ. enterprise service bus, ESB) — связующее программное обеспечение, обеспечивающее централизованный и унифицированный событийно-ориентированный обмен сообщениями между различными информационными системами на принципах сервис-ориентированной архитектуры. Понятие введено в начале 2000-х годов специалистами подразделения Progress Software — Sonic, разрабатывавшими MOM-продукт SonicMQ[1][2].

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

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

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

Конкретные программные продукты обычно также содержат готовые адаптеры для соединения с конкретным прикладным программным обеспечением, а также могут включать API для создания таких адаптеров.

По состоянию на вторую половину 2011 года Forrester относил к «волне лидеров»[4] следующие продукты со значительным присутствием на рынке: WebMethods ESB (Software AG, семейство продуктов WebMethods, поглощённой одноимённой компанией), ActiveMatrix Service Bus (Tibco), Oracle Service Bus (Oracle, семейство Fusion Middleware), WebSphere Message Broker (IBM, семейство WebSphere). Среди продуктов с менее значительным присутствием на рынке упомянуты Sonic ESB (Progress Software), WebSphere ESB и ESBRE (IBM), FuseSource, с незначительным — MuleESB, WSO2, JBoss ESB (Red Hat).