Jak awaryjna i kopia zapasowa działa w iGaming
Dlaczego iGaming potrzebuje specjalnej dyscypliny DR/BCP
Platforma kasynowa to pieniądze w czasie rzeczywistym (portfel/księga), runda na żywo (RNG/Live), płatności, powiązania i ścisła zgodność. Wszelkie otwory na dostępność szybko przekształcają się w ryzyko finansowe i prawne. Dlatego architektura zbudowana jest wokół przewidywalnego odzyskiwania: znanych celów, znanych scenariuszy, wypróbowanych procedur.
Podstawowe cele i terminy
RTO - Cel dotyczący czasu odzysku
Dla portfela/księgi: ≤ 60-300 s (feilover śródregionalny), ≤ 15 min (DR międzyregionalne).
Cel punktu odzysku (RPO) - dopuszczalna utrata danych.
Dla rejestru: 0-5 sekund (replikacja synchroniczna/quasi-synchroniczna), do zgłaszania: ≤ 15 minut.
SLA i budżet na błędy: sformalizowanie kompromisów między tempem zmian a stabilnością.
Warstwy tolerancji uszkodzeń
1) Infrastruktura: Multi-AZ/Multi-Region
Multi-AZ (minimum 3 strefy): wszystkie usługi krytyczne są dystrybuowane przez strefy, automatyczna baza danych/awaria autobusu.
Multi-region DR: „gorący” (Active-Active) lub „ciepły” (Active-Passive) drugi region z izolacją według jurysdykcji (miejsce zamieszkania danych).
Decydując, kiedy tryb:- Active-Active: niskie opóźnienia dla graczy w dwóch regionach, księga cross-region poprzez synchronizację wydarzeń + ścisłe pojedyncze „miejsce prawdy” do obliczeń.
- Active-Passive (ciepło): prostsze i tańsze; pasywne trzyma ciepłe instancje + repliki bazy danych, ale nie obsługuje ruchu.
2) Sieć i obwód
Duplikat ingress/WAF, Anycast lub DNS feilover z kontrolą zdrowia.
Oddzielne bramy dla kas i dostawców, listy dozwolonych IP w obu regionach.
3) Dane i kolejki
Relacyjne bazy danych (Postgres): Patroni/Managed HA, repliki synchroniczne w AZ, asynchroniczna replika w regionie DR (z monitorowaniem opóźnień). PITR z migawkami co N minut + archiwum WAL.
OLAP (ClickHouse/اQuery): replikacja/shading; strata jest dopuszczalna powyżej (RPO do 15-30 min).
Cache (Redis): gromada z zakończeniem awaryjnym, ale nie źródłem prawdy; podczas przełączania - rozgrzewka.
Autobus imprezowy (Kafka/NATS): klastry lustrzane i/lub lusterka krzyżowa, gwarancja co najmniej raz, kontrola idempotencji konsumentów.
4) Aplikacje i domeny
Portfel/księga: rdzeń statyczny o ścisłej konsystencji, jeden „mistrz pisarz” na region; z międzyregionalnym DR - procedura „wybrany pisarz” z podwójnym blokadą wejścia.
Most gry/API: bezpaństwowiec, feiler poziomy do kontroli zdrowia; Klucz do wszystkich ścieżek finansowych.
Bonusy/powiadomienia/ETL: zezwala na opóźnione przetwarzanie, uruchamianie ponownie z kolejek.
Box office (PSP/crypt): strategia wielu dostawców (co najmniej 2 szyny na kraj), szybka zmiana handlowców/punktów końcowych.
5) Strumienie na żywo
bramy WebRTC/LL-HLS z regionalnymi węzłami krawędziowymi; trasy awaryjne na LL-HLS w ramach degradacji WebRTC.
Utrzymanie logiki zakładów poza graczem, tak aby ponowne uruchomienie strumienia nie miało wpływu na obliczenia.
Schematy awaryjne
Aktywa-aktywa (dwuregionalne)
Plusy: Minimalny RTO/RPO, bliskość graczy.
Minusy: złożoność rejestru i konflikty nagrywania, droga siatka.
Praktyka: „jeden pisarz na domenę” + pozyskiwanie wydarzeń do odtwarzania stanów w sąsiednim regionie.
Zobowiązanie z tytułu aktywów (ciepłe)
Plusy: bilans ceny/trudności.
Minusy: RTO powyżej, potrzebują udowodnionego planu, aby „promować” bierny region.
Praktyka: automatyzacja + ręczne potwierdzenie (zasada 4-eye) podczas przełączania portfela.
Śródregionalny (Multi-AZ)
Baza danych/cache/ingress autofailer.
Brak zmiany DNS/Anycast, RTO sekund-minut.
Kopia zapasowa według klasy danych
Zasady:- Kopia zapasowa jest szyfrowana w spoczynku i w tranzycie, klucze są szyfrowane w KMS/HSM.
- Tryb immutable (WORM) dla krytycznych kopii zapasowych (ochrona przed usunięciem/ransomware).
- Katalog kopii zapasowych z metadanymi (wersja schematu, okno WAL, czeki).
- PITR jest obowiązkowy dla księgi.
Dane i idempotencja: jak uniknąć „dziur” z feiler
Idempot Klucz na żądania 'bet'. miejsce ',' wypłata. żądanie „,” kasjer. webhook '.
Ledger - tylko dodatek-tylko: powtarzające się rozliczenie utworzy wpis korekcji, a nie „rewrite”.
Blokady transakcyjne/wersioning balansu chronią przed wyścigami podczas przełączania ról pisarza.
Deduplikacja zdarzeń (po stronie konsumenta, hash według pól kluczowych).
Kasa, PSP i crypt: plan B jest zawsze wliczony
Co najmniej dwóch dostawców dla metody płatności (karta/AWP), wcześniej założonych rachunków handlowców w obu regionach.
Dla stablecoin - dwie sieci (na przykład TRC-20 i ERC-20) oraz dwóch dostawców na/off-ramp.
Router wypłat: w przypadku awarii PSP natychmiast przełącza się na kopię zapasową, zachowuje dziennik powodów.
Strumienie KYT/AML są powielane; jeżeli usługa zewnętrzna nie jest dostępna - „tryb awaryjny” z ręczną eskalacją.
Procedury operacyjne (książki operacyjne)
Automatyczne
Łańcuch kontroli zdrowia ingress → API → portfel → baza danych → dostawca.
Automatyczne wyłączanie „ciężkich” funkcji (turnieje/misje) po zdegradowaniu portfela.
Terminy/rekolekcje z wykładniczą przerwą i rygorystycznymi terminami.
Instrukcja obsługi (z potwierdzeniem)
Promowanie DR-region w atut: listy kontrolne według etapów, logowanie, com-szablony (wsparcie/partnerzy/regulator).
Odszkodowanie/VOID w podziale na rundy: wywołać kody, linki do przewodnika wideo, podpis odpowiedzialnych.
Rozmrażanie płatności za pomocą podwójnej kontroli.
Ćwiczenia i kontrole gotowości
Dzień gry/Chaos Drill miesięcznie: wyłączenie AZ, degradacja bazy danych, spadek dostawcy.
Pełny kwartał DR Rehearsal: podnieść region DR „w pełnym wzroście”, prowadzić realne scenariusze zakładów/płatności.
Przywracanie testów: przywróć księgę do czasu T, sprawdź za pomocą sterowania P&L i skrótów.
Tabela-top z zgodności: kto i kto powiadamia, które raporty są generowane (regulator, PSP, podmioty powiązane).
Obserwowalność i sygnały feilover
Metryki SLO: torebka p95 opóźnienie, share 'bet. odrzucone ", czas rozliczenia okrągły, wypłata SLA, opóźnienie replikacji bazy danych, opóźnienie konsumenta Kafka.
Przełączanie zdarzeń: alerty „role change”, „replication lag> X”, „object-lock violation”.
Deski rozdzielcze DR: bieżąca rola węzła, wynik RPO (minuty WAL), stan okna PITR.
Bezpieczeństwo i zgodność
Izolacja danych według jurysdykcji (EU/UK/CA/...): powielanie w granicach prawnych.
Dzienniki stałe (S3 Object Lock/WORM), zatrzymywanie w terminach regulacji.
Sekrety: rotacja klucza, podwójna kontrola dla DR.
Ścieżka audytu wszystkich rozdzielnic i restauracji.
Anty-schematy, które łamią DR
Jedna sieć PSP/stablecoin na kraj - brak szyny zapasowej.
OLTP i OLAP w tej samej bazie danych - blokuje operacje odzyskiwania na żywo.
Brak idempotencjKlucz - debet/wypłata podwaja się za przekładki.
Kopie zapasowe bez regularnego testu przywracania są „Schrödinger backup”.
Brak WORM/immutability - podatność na poufne/złośliwe usunięcie.
Feilover DNS bez krótkich TTL i podgrzewanych punktów końcowych.
Jednym pisarzem księgi w dwóch regionach w tym samym czasie jest podział państwa.
Lista kontrolna gotowości awaryjnej
Architektura
- Multi-AZ dla wszystkich usług krytycznych, udokumentowana topologia.
- DR-region z opisaną rolą (Active-Active/Passive) i budżetem.
Dane
- Postgres: PITR, migawki, monitorowanie opóźnień, regularne testy odzysku.
- Kafka/NATS: lustrowanie/archiwum, plan powtórzenia.
- ClickHouse/OLAP: kopie zapasowe partii, próbki przywracające.
- S3: Object Lock (WORM), wersje, cross-region.
Wnioski
- Idempotencja w pieniądzu, księga załączona tylko, wersioning bilansu.
- Auto-funkcja-degradacja incydentów (turnieje/misje wyłączone).
- Kontrole kanaryjskie przed zmianą regionu.
Biuro biletowe i krypt
- Dwóch dostawców na metodę i dwie sieci na stajnie.
- Routing i przełączanie powoduje dziennik.
- KYT/AML w trybie degradacji z eskalacją.
Operacje
- Książki startowe z RACI i telefonami obsługującymi.
- Miesięczne dni chaosu i ćwiczenia kwartalne Full-DR.
- Szablony komunikacyjne (wsparcie, partnerzy, regulator).
Obserwowalność
- Tablice rozdzielcze RTO/RPO, wpisy ról DB, opóźnienia, awarie ofert/płatności.
- Dziennik audytu przełączników i przywróceń.
Niezawodność iGaming to nie „przycisk feiler”, ale system nawyków: izolacja geograficzna, przewidywalny RTO/RPO, idempotent money, multi-rail cash desk, niezmienne kopie zapasowe, regularne ćwiczenia i przejrzysta komunikacja. Ta dyscyplina pozwala doświadczyć niepowodzeń bez strat w księdze, bez „utknął” rundy i bez uderzenia zaufania graczy i regulatorów.