Микросервисы
Микросервисная архитектура декомпозирует платформу на независимо развёртываемые сервисы с отдельными зонами ответственности.
Границы сервисов
Bounded Context из Domain-Driven Design: player-service, wallet-service, game-engine-service, bonus-service, kyc-service, notification-service. Каждый владеет своей БД, не делит state с другими. Коммуникация только через API/events.
Преимущества для гейминга
Независимое масштабирование: game-engine нагружен во время матчей, wallet — при выплатах. Independent deploys: обновление одного сервиса не задевает других. Технологическая гетерогенность: Go для performance-critical, Python для ML, Node для API. Fault isolation: сбой одного сервиса не роняет платформу.
Стоимость
Distributed complexity: сетевые вызовы, latency, partial failures. Data consistency: saga, event sourcing. Operational overhead: 10+ сервисов требуют мощной DevOps-практики. Rule of thumb: начинать с монолита, выделять сервисы по мере роста.
Инструменты
Kubernetes для оркестрации. Service Mesh (Istio, Linkerd) для observability. API Gateway для внешнего API. Kafka/NATS для событий. Distributed tracing (Jaeger, Tempo). Централизованное логирование (ELK, Loki).