Казино платформасының ауқымдылығын қалай қамтамасыз етуге болады
Мақаланың толық мәтіні
1) Нені масштабтау керек
Трафик және сессиялар: SEO/стрим/турнирлерден жарылыстар (оқуға ондаған мың RPS, жазуға мыңдаған RPS).
Ақша контуры: ставкалар/сеттльменттер/депозиттер/кэшауттар - тұтастық пен жасырындылықтың басымдығы.
Төлемдер: PSP бойынша бағыттау, каскадтар, әртүрлі гео және мерчанттар.
Контент: жүздеген провайдерлер, параллельді он мыңдаған ойын сессиялары.
Деректер: KPI шынайы уақыты және OLTP блоктамай есеп беру.
Комплаенс: нақты уақытта RG/AML/KYC.
2) Масштабталудың сәулеттік негіздері
2. 1 Қабаттар және жауапкершілікті бөлу
Edge: API-gateway, WAF/бот-қорғау, rate-limit, geo-сүзгілер.
Домендік қызметтер: Wallet/Ledger, Cashier, Game Gateway, Bonus, RG, Risk/AML, PAM, Affiliates, CRM.
Data-қабат: оқиға шинасы (Kafka/Pulsar), кезектер (SQS/Rabbit), кэштер (Redis), OLTP (Postgres/Oracle), OLAP (ClickHouse/BigQuery).
Observability/SecOps: метриктер/трейдерлер/логтар, SIEM/SOAR, Vault/HSM.
2. 2 Оқиға моделі + CQRS
Командалар (жазбалар) - қатаң түрде домендік API арқылы;
Оқу - проекциялар арқылы (индекстелген көріністер/кэштер/OLAP).
Outbox/CDC: әрбір оқиға транзакциямен бірге атомарлық түрде жарияланады; талдау жауынгерлік ДБ емес, шинаны «тыңдайды».
2. 3 Сағалар мен іспеттілік
Ұзақ процестер (депозит, кэшаут, бонус, турнирлік наградалар) - дастандармен орнаменттеледі.
Барлық ақшалай және бонустық командалар - іспеттес (Idempotency-Key + дедупликация).
3) Ақша жолдарын масштабтау (№ 1 басымдық бойынша)
3. 1 Ledger жеке сервис ретінде
Екі рет жазылған ACID-ДБ (debit/credit), өзгермейтін өткізгіштер, аудит-лог WORM.
p95 әмиян <150 мс, «жоғалған/қайталанған сеттлменттер» = 0.
3. 2 Қосалқы кэш, бірақ «ақиқат» емес
Қысқа учаскелердегі лимиттер, теңгерім-проекциялар, локалар үшін Redis; әмиян шындық көзі болып қала береді.
Cache stampede (TTL + jitter, single-flight) қорғанысы.
3. 3 Көлденең масштабтау
player_id/brand_id/region бойынша шардалау, ыстық шарлар - жеке тораптарға.
проекцияларға/бэк-офиске арналған Read-replicas; OLTP, OLAP бөлінген.
4) Өсуде PSP төлемдері мен оркестрі
Routing: BIN/гео/скоринг/құны бойынша; арналарды динамикалық қайта бағалау.
Каскадтау: себетті жоғалтпай PSP1 → PSP2 істен шығуы (идемпотенттік токендер).
кіре берістегі 3-DS/AVS/velocity ережелері; карта/құрылғылардың графикалық байланыстары бар антифрод.
Салыстыру: күн сайын PSP және леджер тізілімдерін автоматты салыстыру; айырмашылықтар бойынша тәуекелдер.
5) Game Gateway және жүктеме «жарылыстары»
Провайдерлерге бірыңғай шлюз (token-handshake, health-чек, «no new sessions» деградациясы).
Back-pressure және провайдерлік шыңдар әмиянды қоймауы үшін кезектер.
Ойыншы/үстел/провайдер деңгейіне Rate-limit; «ойын ішіндегі триктерден» қорғау.
6) Продакшенді тұншықтырусыз деректер және талдау
Outbox/CDC → DWH ағыны, SLA витриналарды жеткізу ≤ 5 мин.
Проекции KPI (FTD, NGR, ARPPU, Retention, LTV, Wager Progress, Risk flags) — в OLAP.
RLS/PII қоймада бүркемелеу; PII аймақтық (data residency).
7) Multi-region / Multi-brand
7. 1 Географиялық тұрақтылық
Өңірлер бойынша актив-актив/актив-пассив, RPO ≤ 5 мин, RTO ≤ 30 мин.
PII/ақшаны гео-шардалау (EU/UK/BR/...); PII-ге кросс-өңірлік сұрау салуларға тыйым салу.
7. 2 Мультибренд
Жалпы интеграция (Game Gateway, Bonus, Affiliates) + оқшауланған Ledger/Cashier/PII per лицензия/өңір.
Оқиғалар шинасында 'tenant _ id/brand _ id/license' деген міндетті кілттер бар.
8) Бақылау, сенімділік, хаос-инжиниринг
Метрика: p95/p99 latency per service, error rate, saturation, бизнес-метрика (bets/min, settle lag, deposit success).
Трейсинг: бірыңғай 'trace _ id' арқылы edge → домендер → шина → консьюмерлер.
SLO бойынша алертинг: SLO-қателер бюджеті және басқарылатын тозулар (бонустарды мұздату, stop-new-sessions).
Хаос-практикалар: PSP/провайдерлердің/желілердің тұрақты фейлдері, каскадтарды және сағдарды тексеру.
9) RG/AML/KYC масштабында
Ставкадағы синхронды тоқтату сигналдары (депозит/ысырап/уақыт лимиттері, өзін-өзі алып тастау).
Мінез-құлық сигналдарының ағындары (ұзақ сессиялар, мөлшерлеменің эскалациясы), проактивті нотификациялар.
AML: санклистер/РЕР, қаражат көзі, SAR/STR - автоматтандырылған пайплайндар.
10) Қауіпсіздік «әдепкі»
Zero-trust: mTLS, қысқа өмір сүретін токендер, RBAC/ABAC, ең аз құқықтар қағидаты.
Құпиялар - Vault/HSM; KMS-шифрлау at-rest, PAN (PCI DSS) токенизациясы.
WAF/бот-қорғау, device-fingerprinting, DLP; өзгермейтін аудит (WORM).
11) FinOps қираусыз масштабтауға арналған
Бизнес-метриктер бойынша автоскейл (bets/min, settle lag), тек CPU бойынша ғана емес.
Spot/үзілетін инстанциялар - асинхронды консьюмерлер және ETL үшін.
Квоталар лимиттері, бюджеттік тәуекелдер; сервис және бренд бойынша шығындарды белгілеу.
Сұрау/индекстерді бейіндеу; Логи/метрикадағы TTL саясаты.
12) Эволюцияның жол картасы (егер монолиттен бастау болса)
1. Оқиғалар шинасын және бірыңғай сөздікті енгізу ('bet. placed`, `bet. settled`, `wallet. debit/credit`, `deposit. succeeded`).
2. Ledger-ді outbox және іспеттілігі бар жеке сервиске/ДҚ-ға шығару.
3. Cashier (PSP-оркестрлеу, каскадтар, салыстыру).
4. Game Gateway және «no new sessions» деградациясын қою.
5. Bonus/RG бағдарламасын оқиғаларға жазылуға аудару; қолмен түзетуге тыйым салу.
6. OLTP/OLAP тарату және DWH CDC ағындарын теңшеу.
7. observability (SLO-дашбордтар, трассинг) және хаос-жаттығуларды қосу.
8. Гео басымдықтар бойынша multi-region (деректер/кілттер/мерчанттар/PII) дайындау.
13) Жетілген платформаға арналған SLO-минимум
Ядро аптайымы (Wallet/Cashier/Game Gateway) ≥ 99,95%.
p95 Ledger <150 мс; авторизациялау Cashier <3 с; депозиттің табысы ≥ 85% нысаналы гео.
«Жоғалған/қайталанған сеттлменттер» = 0.
Оқиғаларды BI-ге дейін жеткізу ≤ 5 минут.
Ядро инциденттерінің MTTR <30 мин.
14) Масштабтау сәулетшісінің чек-парағы
- Домендер бөлінген; ақша - outbox/CDC бар жеке Ledger.
- Командалар іспеттес; дедупликация кілттері барлық жерде.
- back-pressure және тозу режимімен Game Gateway.
- Cashier: PSP каскадтары, ретрациялар, салыстыру, істен шығу телеметриясы.
- CQRS/проекциялары; OLTP және OLAP физикалық түрде бөлінген.
- Schema Registry-мен оқиғалар шинасы; келісімшарттарды нұсқалау.
- RG/AML - синхронды тоқтату сигналдары; логиндер мен есептер автоматтандырылған.
- Observability: метриктер/трестер/логтар с 'trace _ id' және тегтер brand/tenant.
- DR-жоспар: актив-актив/пассив, RPO ≤ 5 мин, RTO ≤ 30 мин; тұрақты оқу-жаттығулар.
- Қауіпсіздік: mTLS, Vault/HSM, PCI/GDPR, WAF/бот-қорғау, WORM-аудит.
- FinOps: бизнес-метриктер бойынша автоскейл, бюджет-алерта, шығын тегтері.
15) Қарсы үлгілер (қызыл жалаулар)
Бірыңғай БД «бәріне», BI жауынгерлік кестелерге соғады.
Баланстарды/бонустарды ДБ-да қолмен түзету.
Әрекетті «айналып өту» оқиғаларын жариялау (outbox жоқ).
Деградацияның болмауы: «не бәрі, не құлап қаламыз».
Каскадсыз және телеметриясыз төлеуден бас тарту.
Сәйкессіздік жоқ; ретрайлер сеттльменттердің дублдерін жасайды.
PII геоқшаулағыш пен мерчант кілттерінің болмауы.
Нөлдік трассировка: тергеулер сағатпен созылады.
Казино платформасының масштабталуы «серверлерден артық» емес, дұрыс шекаралар мен оқиғалық операциялық модель: оқшауланған және жылдам ақша контуры, тұрақты төлем қабаты, басқарылатын деградациясы бар ойындар шлюзі, OLTP/OLAP бөлу, SRE/FinOps бақылау және тәртіп. Мұндай іргетаста платформа турнирлердің шыңдарын, жаңа гео және ондаған брендтерді - ойыншылардың ақшасы мен беделіне қауіп төндірмей тыныш өмір сүреді.
