Skip to content

Magicthirst/Service_Gateway_Py

Repository files navigation

Gateway

Данный репозиторий содержит микросервис Gateway, который служит единой точкой входа (API Gateway) для взаимодействия с другими сервисами в архитектуре. Он маршрутизирует входящие HTTP-запросы к соответствующим бэкенд-сервисам (Auth, Hosts, Sync) и обеспечивает централизованную обработку аутентификации, логирования и ошибок.

Функциональность

  • Маршрутизация HTTP-запросов: Перенаправляет запросы к микросервисам Auth и Hosts на основе URL-пути.
  • Маршрутизация gRPC-запросов: Осуществляет взаимодействие с сервисом Sync через gRPC.
  • Централизованная аутентификация: Проверяет токены доступа, отправляя HEAD-запросы в микросервис Auth, прежде чем перенаправить запрос.
  • Обработка сессий: Управляет сессиями хостов, включая их запуск и приглашение игроков.
  • Логирование: Логирует входящие запросы для упрощения отладки и мониторинга.
  • Обработка ошибок: Предоставляет стандартизированные ответы в случае недоступности бэкенд-сервисов или ошибок валидации.

Технологии

  • Веб-фреймворк: FastAPI для создания асинхронного, высокопроизводительного API.
  • HTTP-клиент: httpx для асинхронных HTTP-запросов к другим микросервисам.
  • gRPC: Используется для высокоэффективного межсервисного взаимодействия с сервисом синхронизации.
  • Схема данных: Pydantic (models.py) для валидации данных и автоматической генерации схем API.
  • Аутентификация: fastapi.security.HTTPBearer для обработки Bearer-токенов в заголовках запросов.

Api

PDF с документацией Api сгенерирован с помощью инструмента openapi-to-pdf.
PDF, json, yaml

Запуск

TODO

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published