В чем разница между оркестровкой служб и агрегацией? В аналогичном посте на SO кто-то упомянул, что между этими двумя терминами есть тонкая грань. Можно ли получить более подробную информацию об этой тонкой линии? Кроме того, что такое расширение услуг и как оно связано с двумя другими концепциями.
Разница между оркестровкой служб, агрегацией служб и расширением служб
Ответы (2)
Оркестровка службы — это координация или интеграция нескольких служб для представления их как единой службы.
Инструмент: Oracle Bpel, например.
Агрегация услуг действует как фасад над услугами более низкого уровня, скрывая технические детали и взаимосвязь от потребителя услуги.
Агрегация сервисов повышает ценность всей системы, обеспечивая более высокий уровень абстракции. Инструмент: например, Oracle Service Bus (OSB-Proxy Services).
Расширение службы используется в службе для обогащения сообщений. Предположим, что на основе идентификатора клиента вам необходимо получить дополнительные данные, такие как адрес, адрес электронной почты или телефон, вы должны дополнить сообщение с помощью запросов к базе данных и т. д.
Агрегация сервисов — это объединение сервисов-компонентов для создания сервиса-компонента. Он состоит из нескольких шагов, таких как:
- Поиск опубликованных сервисов
- Комбинируя их
- Поток данных и управления компонентными службами
- Динамическая композиция сервисов-компонентов
- Оценка комплексных услуг
- Сохранение контекстно-зависимой среды для составных сервисов
- ...
Одной из подзадач агрегации сервисов является получение потока данных и управления компонентными сервисами. В качестве грубого упрощения можно предположить, что это порядок выполнения сервисов-компонентов и данные, которыми следует обмениваться между ними, для построения составного сервиса. Существует два способа реализации потока данных и управления: оркестровка и хореография. Первый, который был темой этого вопроса, имеет центральный блок управления. Во втором нет единого владельца потока, и он получается путем согласования между сервисами-компонентами. В заключение я бы сказал, что оркестровка сервисов — это подзадача агрегации сервисов.