Шина сообщений

Архитектура, основанная на шине сообщений (message bus), подразумевает наличие общего коммуникационного канала, используя который компоненты обмениваются информацией. Компонент помещает сообщение в коммуникационный канал, после этого сообщение рассылается всем заинтересованным компонентам. Данная архитектура направлена на решение коммуникационных задач.

Принципы архитектуры с использованием шины сообщений следующие:

1. Все коммуникации между компонентами выполняются только при помощи информационных сообщений.

2. Сообщения имеют стандартный формат. Это позволяет интегрировать компоненты, разработанные на разных платформах.

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

4. Как правило, коммуникация происходит в асинхронном режиме.

Преимущества шины сообщений:

– Расширяемость. Компоненты, подключённые к шине, добавляются и удаляются без воздействия на другие подключённые компоненты.

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

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

Вариациями стиля шина сообщений являются шина сервисов масштаба предприятия (enterprise service bus) и шина интернет-сервисов (internet service bus). В первом случает иметься в виду наличие средств для конвертирования сообщений, циркулирующих по шине, в различные форматы. Во втором случае шина объединяет компоненты, распределённые по всемирной сети. Это подразумевает идентификацию клиентов при помощи универсального идентификатора ресурсов (uniform resource identifier, URI) и особые политики безопасности.