IGaming-de faýlower we ätiýaçlyk göçürmesi nähili işleýär
Näme üçin iGaming DR/BCP aýratyn düzgün-nyzamy?
Kazino platformasy hakyky wagtda pul (gapjyk/dolandyryjy), janly tapgyrlar (RNG/Live), tölegler, affiliates we berk gabat gelmekdir. Elýeterlilikdäki islendik "deşik" çalt maliýe we hukuk töwekgelçiligine öwrülýär. Şonuň üçin arhitektura öňünden aýdyp boljak dikeldiş töwereginde gurulýar: belli maksatlar, belli ssenariýalar, repetisiýa edilen amallar.
Esasy maksatlar we adalgalar
RTO (Recovery Time Objective): hyzmaty dikeltmek wagty.
Gapjyk/dolandyryjy üçin: ≤ 60-300 sek (sebitara feýlower), ≤ 15 min (sebitara DR).
RPO (Recovery Point Objective): maglumatlary ýitirmek.
Ledjer üçin: 0-5 sek (sinhron/kwazisinhron replikasiýasy), hasabat üçin: ≤ 15 minut.
SLA we Error Budget: üýtgemeleriň tizligi bilen durnuklylygyň arasyndaky ylalaşyklary resmileşdirýärler.
Şowsuzlyga çydamlylyk gatlaklary
1) Infrastruktura: Multi-AZ/Multi-Region
Multi-AZ (azyndan 3 zona): ähli möhüm hyzmatlar zolaklar boýunça paýlanýar, awtomatiki feýlower DB/şina.
Multi-Region DR: "gyzgyn" (Active-Active) ýa-da "gyzgyn" (Active-Passive) ýurisdiksiýalary boýunça izolýasiýa edilen ikinji sebit (data residency).
Karar, haçan haýsy re modeim:- Active-Active: iki sebitde oýunçylara pes gizlinlik, wakalary sinhronlamak arkaly cross-region ledger + hasaplamalar üçin berk ýeke-täk "hakykat ýeri".
- Active-Passive (warm): has aňsat we arzan; passiw DB-iň gyzgyn taraplaryny saklaýar, ýöne traffigi hyzmat etmeýär.
2) Tor we perimetri
Saglyk barlaglary bilen köpeldilen ingress/WAF, Anycast ýa-da DNS Feylower.
Kassa we üpjün edijiler üçin aýratyn egress-şlýuzlar, iki sebitde rugsat berlen IP sanawlary.
3) Maglumatlar we nobatlar
Relýasiýa DB (Postgres): Patroni/Managed HA, AZ-da sinhron replikalar, DR-sebitde asinxron replika (laglara gözegçilik bilen). Her N minutda snapşotlar bilen PITR + WAL arhiwi.
OLAP (ClickHouse/BigQuery): köpeltmek/bölmek; ýitirmek has ýokary (RPO 15-30 minuta çenli).
Kesh (Redis): failover klaster, ýöne hakykat çeşmesi däl; çalşylanda - ýyly ýylylyk.
Wakalaryň şinasy (Kafka/NATS): aýna klasterleri we/ýa-da cross-cluster-mirroring, "at-least-once" kepilligi, sarp edijilere idempotentlige gözegçilik.
4) Programmalar we domenler
Gapjyk/dolandyryjy: berk yzygiderliligi bolan stateful-ýadro, sebite bir "master-raýter"; sebitara DR - goşa ýazgyny blokirlemek bilen "elected writer" prosedurasy.
Oýun bridge/API: stateless, saglyk çekleri boýunça gorizontal feýlower; idempotencyKey ähli maliýe ýollary üçin.
Bonuslar/habarnamalar/ETL: yza süýşürilen gaýtadan işlemäge rugsat berýär, nobatlardan täzeden açylýar.
Kassa (PSP/kripto): multiprowaýder strategiýasy (ýurda azyndan 2 rels), söwda nokatlarynyň/endpointleriň çalt geçişi.
5) Göni ýaýlym
Sebit edge-düwünleri bolan WebRTC/LL-HLS geýtweýleri; WebRTC zaýalananda LL-HLS fallback-marşrutlary.
Akymy täzeden başlamak hasaplamaňyza täsir etmezligi üçin jedelleriň logikasyny pleýeriň daşynda saklamak.
Faýlower patternleri
Aktiw-aktiw (iki sebit)
Artykmaçlyklary: iň az RTO/RPO, oýunçylara ýakynlyk.
Minuslar: dolandyryjynyň we ýazgy gapma-garşylyklarynyň çylşyrymlylygy, gymmat tor.
Practice: "domen üçin bir ýazyjy" + goňşy sebitdäki ýagdaýlary oýnamak üçin waka çeşmesi.
Aktiw-passiw (ýyly)
Artykmaçlyklary: bahanyň/çylşyrymlylygyň deňagramlylygy.
Minuslar: RTO has ýokary, passiw sebiti "mahabatlandyrmak" üçin işlenip düzülen meýilnama gerek.
Amal: gapjyk çalşylanda awtomatika + el bilen tassyklama (4 gözli prinsip).
Sebitara (Multi-AZ)
DB/keş/ingress awtofeýler.
DNS/Anycast, RTO sekuntda-minutda üýtgemez.
Maglumat synplary boýunça ätiýaçlyk göçürmesi (Backup)
Ýörelgeler:- Bekap rahatlykda we tranzitde, açarlar KMS/HSM-de şifrlenýär.
- Möhüm yzlar üçin Immutable-mode (WORM) (silmekden/şifrlemekden goramak).
- Meta-maglumatlar bilen bellik katalogy (shemanyň wersiýasy, WAL penjiresi, gözegçilik pullary).
- PITR dolandyryjy üçin hökmanydyr.
Maglumatlar we idempotentlik: feýlowerde "deşiklerden" gaça durmak
IdempotencyKey 'bet' soraglarynda. place`, `payout. request`, `cashier. webhook`.
Ledger - diňe append-only: gaýtalanýan settle "täzeden ýazmak" däl-de, düzediş ýazgysyny döreder.
Geleşik gulplary/balansyň wersiýasy ýazyjynyň roly çalşylanda ýaryşlardan goraýar.
Wakalaryň duplikasiýasy (consumer-side, esasy meýdanlar boýunça hash).
Kassa, PSP we kripto: B meýilnamasy hemişe açykdyr
Iki sebitde öňünden açylan söwda hasaplary üçin töleg usuly (karta/ARM) üçin azyndan iki üpjün ediji.
Stabilkoinler üçin - iki tor (mysal üçin, TRC-20 we ERC-20) we iki on/off-ramp-üpjün ediji.
Töleg marşrutizatory: şowsuzlyk ýüze çykan halatynda PSP derrew ätiýaçlyk tölegine geçýär, sebäpler sanawyny ýöredýär.
KYT/AML akymlary gaýtalanýar; daşarky hyzmat elýeterli bolmasa - el bilen güýçlendirilen "degraded mode".
Amal amallary (Runbooks)
Awtomatiki
Saglyk-çek zynjyry ingress → API → gapjyk → BD → üpjün ediji.
Gapjyk zaýalananda "agyr" funksiýalary (ýaryşlar/missiýalar) awto öçürmek.
Eksponensial arakesme we berk möhletler bilen wagt/retralar.
El (tassyklanan)
DR-sebiti aktiw hökmünde mahabatlandyrmak: ädimler boýunça çeklistler, žurnallaşdyrma, komm-şablonlar (sapport/hyzmatdaşlar/düzgünleşdiriji).
Tapgyrlar boýunça kompensasiýa/VOID: sebäpleriň kodlary, wideofide salgylanmalar, jogapkärleriň goly.
Tölegleri iki gezek gözegçilikde saklamak.
Türgenleşikler we taýýarlygy barlamak
"Game Day/Chaos Drill" aýda: AZ-yň öçürilmegi, BD-iň zaýalanmagy, üpjün edijiniň ýykylmagy.
Doly DR Rehearsal çärýekde: DR sebitini "doly ösüşe" çykarmak, hakyky stawka/töleg ssenarilerini kowmak.
Dikeldiş synaglary: T wagtyna dolandyryjyny dikeltmek, gözegçilik P&L we hash dilimleri bilen deňeşdirmek.
Table-top: kim we kime habar berýär, haýsy hasabatlar döredilýär (düzgünleşdiriji, PSP, affiliates).
Feýloweriň synlanylyşy we signallary
SLO-metrikler: p95 latency gapjyk, paýy 'bet. rejected ', settle raund wagty, SLA tölegleri, BD replikasiýa gijigi, Kafka-konsumerler gijigi.
Geçiş wakalary: "role change", "replication lag> X", "object-lock violation" alertleri.
Daşbordlar DR: düwünleriň häzirki roly, RPO-baha bermek (WAL minutlary), PITR-penjiräniň ýagdaýy.
Howpsuzlyk we laýyklyk
Ýurisdiksiýalar boýunça maglumatlaryň izolýasiýasy (EU/UK/CA/...): kanunlar tarapyndan rugsat berlen çäklerde köpeltmek.
Üýtgewsiz magazinesurnallar (S3 Object Lock/WORM), kadalaşdyryjy möhletler boýunça retenşn.
Syrlar: açarlaryň aýlanmagy, DR amallary üçin borçlaryň bölünmegi (dual-control).
Ähli çalşyklaryň we dikeldişleriň audit-traýly.
DR-ni bozýan anti-patternler
Bir PSP/ýurtda bir stabilkoin ulgamy - ätiýaçlyk rels ýok.
OLTP we OLAP bir DB-de - dikeldiş "janly" amallary bloklaýar.
idempotencyKey ýok - retrada debet/töleg goşlary.
Yzygiderli restore-synagsyz ekaplar - "Şrödinger ekap".
WORM/immutability ýoklugy - içerki/zyýanly aýyrmaga gowşaklyk.
Gysga TTL we gyzdyrylan endpointsiz DNS feýlower.
Bir wagtyň özünde iki sebitde ýekeje ýazyjy - döwletiň bölünmegi.
Heläkçilige taýýarlygyň çek-sanawy
Arhitektura
- Ähli möhüm hyzmatlar üçin Multi-AZ, dokumentleşdirilen topologiýa.
- Düşündirilen roly (Active-Active/Passive) we býudjeti bolan DR sebiti.
Maglumat
- Postgres: PITR, snapshotlar, lag-monitoring, yzygiderli dikeldiş synaglary.
- Kafka/NATS: aýna/arhiw, göçürme-meýilnama.
- ClickHouse/OLAP: partiýa yzlary, saýlawlary dikeltmek.
- S3: Object Lock (WORM), wersiýa, kros sebiti.
Programmalar
- Idempotency in money, append-only ledger, balans wersiýasy.
- Hadysalarda awto-feature-degrade (ýaryşlar/missiýalar).
- Sebite geçmezden ozal kanar barlaglary.
Kassa we kripto
- Her usul üçin iki üpjün ediji we stabiller üçin iki tor.
- Marşrut we geçiş sebäpleriniň sanawy.
- KYT/AML degrade modunda.
Amallar
- RACI we nobatçy telefonly Runbooks.
- Aýlyk Chaos günleri we çärýek Full-DR maşklary.
- Aragatnaşyk şablonlary (sapport, hyzmatdaşlar, düzgünleşdiriji).
Syn ediliş
- Dashbordlar RTO/RPO, DB rollarynyň aladalary, laglar, nyrhlaryň/tölegleriň şowsuzlyklary.
- Geçiş we dikeldiş audit-log.
iGaming ygtybarlylygy "feýlower düwmesi" däl-de, endikler ulgamy: geografiki izolýasiýa, öňünden aýdyp boljak RTO/RPO, idempotent pullary, köp ugurly kassa, immutable-bekaplar, yzygiderli maşklar we aç-açan aragatnaşyk. Şeýle düzgün-nyzam, ledjerde ýitgiler bolmazdan, "ýapyşyk" tapgyrlar bolmazdan we oýunçylaryň we düzgünleşdirijileriň ynamy boýunça zarbalar bolmazdan, şowsuzlyklary başdan geçirmäge mümkinçilik berýär.