Infrastructure

Базы данных (Database per Service)

СервисБДRedisS3Ключевые таблицы
Authauth_dbСессии, OTP, refresh tokenssessions, otp_codes
Useruser_dbusers, roles, legal_entities, customers, customer_groups
Storestore_dbКэш ТТ, геоданныеФото ТТstores, schedules, delivery_zones, photos, load_thresholds
Catalogcatalog_dbКэш каталога/ценФото товаровproducts, categories, modifiers, price_lists, stop_lists, upsell_rules
Warehousewarehouse_dbingredients, tech_cards, stock_balances, warehouse_documents

BFF-сервисы

BFFПортКлиентСтек
Admin BFF:3020Бэк-офис (React SPA)Node.js, Fastify, TypeScript
Customer BFF:3021Web-сайт + Мобильное приложениеNode.js, Fastify, TypeScript
POS BFF:3022POS-кассаNode.js, Fastify, TypeScript

BFF-сервисы не имеют своих баз данных — они только агрегируют ответы микросервисов.

Docker Compose (Development)

# Микросервисы: auth, user, store, catalog, warehouse
# BFF: admin-bff, customer-bff, pos-bff
# Инфра: PostgreSQL, Redis, Kafka, MinIO

Каждый сервис:

  • Свой Dockerfile (multi-stage: build + runtime)
  • Spring Boot DevTools для hot-reload в dev
  • Своя БД в PostgreSQL
  • Liquibase-миграции при старте

Kubernetes (Staging / Production)

СервисReplicas (prod)
Authx2
Userx2
Storex2
Catalogx3
Warehousex2
Admin BFFx2
Customer BFFx2
POS BFFx2

Ссылки