Что такое API Composition
Объединение данных из нескольких сервисов
API Composition
API Composition — паттерн микросервисной архитектуры для агрегации данных из нескольких сервисов в единый ответ клиенту.
Принцип работы
| Этап | Действие | |------|----------| | 1. Запрос | Клиент обращается к API Gateway | | 2. Декомпозиция | Gateway определяет нужные сервисы | | 3. Параллельные вызовы | Запросы к микросервисам | | 4. Агрегация | Объединение результатов | | 5. Ответ | Возврат составного ответа |
Варианты реализации
- API Gateway — централизованная агрегация
- BFF (Backend for Frontend) — отдельный слой для каждого клиента
- GraphQL — гибкая выборка через резолверы
- Оркестратор — сервис-координатор
Когда использовать
- Составные страницы (дашборды, профили)
- Отчёты из нескольких источников
- Мобильные приложения (минимизация запросов)
- Публичные API (сокрытие внутренней структуры)
Преимущества и недостатки
| Плюсы | Минусы | |-------|--------| | Меньше запросов от клиента | Сложность реализации | | Инкапсуляция логики | Потенциальные задержки | | Гибкость ответа | Управление транзакциями |