Архитектура платформы Gamble Hub
1) Цели и принципы
Цель: устойчивая к пикам, комплаентная и экономичная платформа iGaming с быстрым Time-to-Market.
Принципы:- Domain-Driven Design: четкие bounded contexts и контракты.
- Событийное ядро (EDA): события — источник правды об изменениях.
- Идемпотентность и наблюдаемость: все критичные потоки с ключами идемпотентности и трассировкой.
- Безопасность по умолчанию: Zero Trust, наименьшие привилегии, шифрование.
- Масштабирование и отказоустойчивость: multi-AZ/region, деградационные режимы.
- FinOps: $/1000 RPS, $/мс p95, CDN/кэш-ориентированность.
2) Высокоуровневая схема (логическая)
[Users/Affiliates/Partners]
│
┌────────────┐
│ Edge (CDN, │ Anycast, WAF, bot filters, SSL/TLS, rate-limit
│ WAF, PoP) │
└─────┬──────┘
│
┌───────────────┐ mTLS/JWT, throttling, canary
│ API Gateway / │──────────────────────────────┐
│ Reverse Proxy│ │Backoffice/Operator UI
└───┬─────┬─────┘ │(RBAC, audit)
│ │ │
│ └────────→ Admin/API (RBAC, IAM) ─────┘
│
Payment ├──Orkestr (PSP Router, KYC/AML, RG)
├──Igrovoy domain (Aggregator, Sessions, RNG proxy)
├──Finansovyy domain (Wallet, Ledger, Limits)
├──Produktovyye domains (Bonus/Promo, Tournament, Loyalty)
├──Polzovatelsky domain (Account, Auth, Profile)
├──Komm. domain (CRM, Push/Email/SMS, Segments)
└──Risk/Antifrod (Rules, Scoring, Device/Intel ASN)
│
┌──────────┴──────────┐
│ Event Bus (Kafka) │ topics: payments, bets, wins, sessions, kyc, promo, audit
└───────┬─────────────┘
│
┌───────────┴───────────┐
│ Data Platform (RT + │ Stream proc, OLAP DWH, Lake, feature store, BI
│ Batch: DWH/Lake/RT) │
└────────────────────────┘
3) Доменные контуры и ключевые сервисы
3.1 Пользователь и доступ
Account/Auth: регистрация, вход, MFA, сессии, блокировки.
Profile/Preferences: локаль, лимиты ответственной игры (RG).
IAM/RBAC: операторы, саппорт, роли и аудиты.
3.2 Финансы
Wallet/Ledger: многовалютные кошельки, транзакции, блокировки средств, журнал в неизменяемом сторе.
Payment Orchestrator: маршрутизация PSP, идемпотентность, приоритеты, failover, Time-to-Wallet метрики.
Limits & Compliance: лимиты депозитов/ставок/потерь, санкционный и страновой комплаенс.
3.3 Контент и игровой процесс
Game Aggregator: каталог провайдеров, запуск сессий, трансляция статусов, веб-хуки.
RNG/Proxy: безопасная прокладка к RNG-провайдерам, контроль целостности.
Session & Bet Engine: ставки, результаты, расчет выигрышей, антидубли.
3.4 Промо и удержание
Bonus Engine: депозит/нон-депозит, фрипины, wagering, expiry.
Tournament/Leaderboard: реал-тайм обновления, анти-абьюз.
Loyalty/Progression: уровни, XP, миссии, витрина офферов.
3.5 Риск и антифрод
Rule Engine: детерминированные правила, скоринг, velocity-чеки.
Device/Network Intelligence: fingerprint, ASN/гео-поведенческие сигналы.
Case Management: расследование, SAR/страйки, эскалации.
3.6 KYC/AML & RG
KYC: верификация документов, источники третьих лиц.
AML: списки, мониторинг транзакций, пороги отчетности.
Responsible Gaming: лимиты/самоисключение/тайм-ауты с событийнным оповещением.
3.7 Коммуникации и CRM
Segments/Eligibility: аудитории, частота, риск-скор.
Journey/Orchestrator: каналы email/SMS/push/in-app.
Content: баннеры, промо-страницы, A/B фичфлаги.
4) Интеграционные слои
API Gateway / Reverse Proxy
TLS 1.3, mTLS для партнеров, JWT/OIDC, HMAC подписи (внешние колбеки).
Роутинг: host/path/header, canary/weighted, geo-routing для PoP.
Защита: WAF, бот-фильтры, rate-limit, request-collapsing, кеш полу-динамики.
Event Bus (Kafka)
Топики: `payments.`, `wallet.`, `betting.`, `rg.`, `kyc.`, `promo.`, `audit.`.
Гарантии: «как минимум один раз», ключи идемпотентности, дедупликация, DLQ.
Схемы: Avro/Protobuf + registry, эволюция схем.
Платежные провайдеры (PSP)
Smart-routing по методам/странам/ASNs, лимиты провайдеров.
Веб-хуки с верификацией подписи, повтор доставки, анти-дупликат.
Reconciliation: сверка дневников, расхождения и алерты.
Провайдеры контента
Сейф-лист IP, токены/подписи, таймауты/ретраи с бюджетом, SLA провайдера.
Мета-каталог и health-checks, «серые» маршруты для подозрительных источников.
5) Данные и аналитика
RT-контур
Стрим-агрегации (win/loss, GGR/Net Deposits, активность), антифрод-сигналы.
Фиды для витрин, лидербордов, триггеров CRM в секундах.
Batch/DWH/Lake
Послойная модель (Bronze/Silver/Gold), SCD, GDPR-удаления, data contracts.
BI/финансовая отчетность: Net Deposits, Time-to-Wallet, ARPPU/LTV, когорты.
Feature Store для ML (скоринг риск/отток/персонализация).
6) Наблюдаемость и SRE
Метрики: p50/95/99, error-rate, throughput, saturation, queue-lag, Time-to-Wallet, hit-ratio CDN.
Логи: структурные, PII-фильтрация, семплирование.
Трейсы: end-to-end (traceparent), tail-based sampling на хвосты.
- API п95 ≤ 250 мс; ошибка ≤ 0.3% / 30 дней.
- Платеж «депозит» п95 ≤ 6 с; успех ≥ 97%.
- Выдача бонуса ≤ 500 мс п95.
- Алерты: нарушен бюджет ошибок, рост 429/ретраев, лаг потребителей событий, снижение resumption TLS.
7) Безопасность и комплаенс
Zero Trust: mTLS east-west, политика наименьших привилегий, явные границы сетей.
IAM: централизованная проверка токенов, короткоживущие креды, секрет-менеджер.
WAF/DDoS: сигнатуры+поведение, greypass/капча, tiered-cache/negative-cache.
Шифрование: в транзите (TLS) и «на покое» (KMS, колонки БД).
GDPR/PII: минимизация, псевдонимизация, право на забвение, аудит доступов.
KYC/AML/RG: обязательные проверки и отчетность; кейс-менеджмент.
Audit trail: неизменяемый журнал для операторов, критичных событий и конфигов.
8) Надежность, DR и топологии
Multi-AZ/Region: актив-актив фронт, актив-пасcив критичных стораджей по RPO/RTO.
PoP/Edge: ближе к игроку, Anycast, origin-shield, прогрев кэшей.
Failover-плейбуки: потеря региона, деградация провайдера, частичный даун кэша.
Деградационные режимы: упрощенная витрина/каталог, кеш-ответы, отложенные фичи CRM, «лайт» антифрод.
9) Производительность и экономичность
CDN/TTL: SWR/if-error, ключ кэша без «шума», tiered/shield.
HTTP/3, TLS resumption: снижение рукопожатий, ChaCha20 на мобильных.
gRPC/протобаф: межсервисные вызовы.
Кэши: Redis для hot-set (каталоги, профили, лимиты).
FinOps: mix reserved/on-demand/spot, авто-паркинг стейджингов, семплирование логов/трейсов.
10) CI/CD и платформа разработчика
IaC: Terraform/Helm, политики OPA (теги, TTL, классы).
Пайплайны: линтеры/тесты/сексканы/перф-смоук; release train, canary/blue-green.
Secrets: vault/secret-manager, rotation, без «секретов в гите».
Фича-флаги: прогрессивный rollout, A/B, отключение «горячих» фич мгновенно.
Golden Paths: шаблоны сервисов (обертки метрик/логов/трейсов, ретраи, идемпотентность).
11) Контракты данных и событий (пример)
Событие `wallet.transaction.v1` (protobuf):- `tx_id` (uuid), `idempotency_key`, `subject_id` (user), `amount` (minor units), `currency`,
12) Мини-плейбуки
Перед пиковым событием (T-30 мин)
1. Увеличить minReplicas и minNodes целевых сервисов, warm pools.
2. Прогреть CDN/DNS/TLS/коннекты, прогреть популярные каталоги/турниры.
3. Ужесточить bot-rules и включить «серые» маршруты.
4. Проверить лимиты PSP, health провайдеров контента.
Инцидент платежей (рост отказов PSP-1)
1. Перевести вес на PSP-2/3 (smart-routing), увеличить retry-budget c backoff.
2. Включить статус-баннер и оповещения.
3. Пост-инцидент: RCA, перераспределение портфеля провайдеров.
Деградация БД (рост p95 запросов)
1. Включить кэширующий слой, понизить частоту тяжелых витрин.
2. Временные лимиты на токены/бонусы, очереди на расчет.
3. План оптимизаций: индексы, партиции, read-replicas.
13) SLO-набор (пример)
API: p95 ≤ 250 мс, ошибка ≤ 0.3% (30 дней).
Платежи: T2W (депозит) п95 ≤ 6 с; `success_rate` ≥ 97%.
Игровые сессии: создание ≤ 300 мс п95, стабильность соединений ≥ 99.9%.
Антифрод: время решения ≤ 200 мс п95 для online-правил.
DWH: SLA готовности ежедневных витрин — 06:00 локального TZ.
14) Дорожная карта эволюции
1. v1: монолит ядра + шлюз, Kafka «внутри» (минимальные топики), базовая аналитика.
2. v2: выделение доменов (wallet, payments, bonus, aggregator), полноценные события, Redis, CDN-политика.
3. v3: multi-region актив-актив фронт, актив-пассив стораджи, smart-routing PSP, RT-лидерборды.
4. v4: ML-скоринг (feature store), персонализация офферов, автоматический FinOps-оптимизатор (commit/spot mix), Zero Trust end-to-end.
15) Чек-лист готовности к продакшену
- Доменные границы и контракты (API + события) задокументированы.
- Идемпотентность платежей/ставок и общее dedupe реализованы.
- SLO/алерты по ключевым потокам (API, Payment, Wallet, Bonus, Tournament).
- WAF/DDoS/бот-фильтры и rate-limits включены, аудит включен.
- DR-план и учения (потеря AZ/региона, провайдера контента/PSP).
- Наблюдаемость: метрики/логи/трейсы, дашборды пиковых событий.
- CI/CD с canary/blue-green и быстрым rollback.
- FinOps: теги, showback/chargeback, $/1k RPS, lifecycle/семплирование.
- GDPR/KYC/AML/RG процессы с аудитом и SLA.
- Security reviews: секреты, IAM, политики доступа, шифрование.
Итог
Архитектура Gamble Hub — это совокупность независимых доменов, связанных событиями, с сильной безопасностью, наблюдаемостью и экономичностью. Такой дизайн дает предсказуемую производительность под турниры и трансляции, быстрые интеграции с провайдерами, контролируемые платежные потоки и прозрачные финпоказатели — при этом оставаясь комплаентным и готовым к масштабированию по регионам.