Karometr
Архитектура

Общая архитектура

Микросервисная архитектура Карометр и взаимодействие контуров.

Общая архитектура

1. Архитектурный стиль

  1. Платформа реализована в микросервисной архитектуре.
  2. Сервисы независимы по релизам и масштабированию.
  3. Синхронные запросы идут через API Gateway.
  4. Асинхронные процессы и события идут через RabbitMQ.

2. Технологический стек

  • Backend: FastAPI
  • IAM: Keycloak
  • База данных: PostgreSQL
  • Кэш и временные данные: Redis
  • Брокер сообщений: RabbitMQ
  • Объектное хранилище: MinIO

3. Логическая схема

Frontend (Nuxt)
   |
   v
API Gateway
   |
   +--> Auth (Keycloak)
   +--> Ingestion Service
   +--> Analytics Service
   +--> Forecast Service
   +--> Billing Service
   +--> Notification Service

Async bus: RabbitMQ
Data store: PostgreSQL + Redis + MinIO

4. Принципы интеграции

  1. Контракты API фиксируются через OpenAPI.
  2. Межсервисные события документируются и версионируются.
  3. Для критичных операций применяется idempotency и retry-policy.
  4. Для безопасности применяется ABAC-first и audit trail.