Что такое API-композиция в микросервисной архитектуре

Python Middle Без компании
Что такое API-композиция в микросервисной архитектуре
Ответы
API-композиция — это подход в микросервисной архитектуре, когда клиент взаимодействует с несколькими микросервисами через единый агрегирующий API-шлюз или сервис-композитор. Вместо прямых вызовов к каждому микросервису, клиент делает один запрос, а композитор собирает данные из нужных сервисов и возвращает объединённый результат. **Пример с кодом (Python + FastAPI):** ``` from fastapi import FastAPI import httpx app = FastAPI() @app.get("/order-details/{order_id}") async def get_order_details(order_id: int): async with httpx.AsyncClient() as client: # Параллельные запросы к микросервисам order_res, user_res = await asyncio.gather( client.get(f"http://orders-service/orders/{order_id}"), client.get(f"http://users-service/users/{user_id}") ) return { "order": order_res.json(), "user": user_res.json() } ``` **Плюсы:** - Уменьшает количество вызовов от клиента - Скрывает сложность внутренней архитектуры - Централизованная обработка ошибок **Минусы:** - Риск создания "монолитного шлюза" - Дополнительная точка отказа - Возможные проблемы с производительностью