Спільна робота в реальному часі
1) Що таке «спільна робота в реальному часі»
Спільна робота в реальному часі (Real-Time Collaboration, RTC) - це здатність учасників мережі одночасно бачити, редагувати і узгоджено виконувати дії (ставки/спини, модерація турнірів, зміна офферів, перемикання платіжних маршрутів, KYC-рішення, ефіри стрімів), зберігаючи низьку затримку, цілісну історію і безпеку даних між безліччю організацій і регіонів.
2) Ключові сценарії real-time для iGaming
Live-контент: WebRTC/RTMP стріми студій, синхронізація ставок і результатів раундів, миттєві лідерборди.
Real-time оркестрація маркетингу: включення/вимикання офферів, місій, банерів, турнірних правил через фіча-прапори і rule-engine без релізу.
Платіжні операції: статус авторизації/чарджбеків, зрізи по PSP/APM, миттєвий cut-over.
KYC/AML модерація: колаборативні черги, присвоєння тікетів, рішення в пару кліків, shared-коментарі.
War-room і інциденти: єдині дашборди р95/помилок, командні дії (рутинг трафіку, переведення на резерв).
Спільна аналітика: ко-редагування панелей, лайв-вітрини подій (bets/spins/deposits).
Ком'юніті/стріми: синхронні розіграші, чат-місії, «натискання червоної кнопки» (стоп-кампанія, стоп-провайдер).
3) Архітектурний фундамент
3. 1 Транспорт і реальний час
WebRTC (SRTP/QUIC) для аудіо/відео/дата-каналів; SFU для fan-out, MCU для мікшування при конференціях.
WebSocket/HTTP-2/3 для сигналінгу, чатів, лідербордів і команд.
QUIC: швидка установка з'єднання, контроль перевантаження, стійкість до втрати пакетів.
QoS/пріоритизація: медіапотоки> командні події> метрики.
Edge/CDN: близькі PoP для зниження RTT; кешування і near-edge обчислення.
3. 2 Узгодженість і стан
CRDT/OT для ко-редагування (правила турніру, оффери, дашборди).
Саги та ідемпотентність для бізнес-транзакцій (нагороди, списання).
CAP-компроміси: сильна консистентність для грошей/балансів, eventual - для вітрин/чатів.
Sticky-routing там, де потрібен локальний стан (live-стіл), інакше stateless.
3. 3 Подієва шина
Доменні топіки: `spin/bet`, `round_start/result`, `deposit/withdrawal`, `kyc_status`, `fraud_signal`, `reward_granted`, `feature_toggle`.
Ключі партій: `playerId`, `tableId`, `campaignId`, `operatorId`.
SLA доставки і lag консьюмерів як SLI; exactly-once за бізнес-змістом з дедуплікацією ключами.
3. 4 Сервіс-меш і маршрутизація
mTLS, outlier-ejection, circuit-breaker, retries з джиттером, пер-тенантні ліміти.
GSLB/Anycast для вхідних точок; policy-routing з гео/латентності/комплаєнсу.
4) Топології та патерни
4. 1 Live-стріми і столи
Студії → SFU-шар (edge PoP) → CDN → клієнти.
Маркери часу (time-sync: NTP/PTP) для чесної синхронізації ставок і результатів.
Швидкий health-flip між SFU/CDN, таргетоване відключення проблемних вузлів.
4. 2 Спільні панелі та правки (co-edit)
WebSocket-шина + CRDT для правил турніру/оферів/дашбордів.
Оптимістичні апдейти з подальшою конвергенцією і логом змін.
4. 3 Real-time платіжний периметр
Event-outbox з оркестратора, «теплі» канали до PSP, cut-over ≤ 60-90 c.
Token Bucket на вихідні виклики, щоб не впустити PSP в пік.
Fail-open/closed стратегії за типами помилок (некритичні фічі vs гроші).
4. 4 War-room і інциденти
Єдиний trace-id і «кнопки» дій (заморозити оффер, відключити провайдера, перевести GSLB-вагу).
Спільні нотатки і чати, мигалки SLO/бюджету помилок, бортовий журнал (WORM).
5) Моделі безпеки та доступу
Zero Trust: короткоживучі токени, mTLS, JWS/HMAC S2S, прив'язка до пристроїв/ASN.
Мікросегментація: vendor-зони (студії, PSP, KYC), ізоляція фінансового контуру.
Мінімізація PII: токени замість ПДн, окремі сейф-сховища, DPIA/DPA.
RBAC/ABAC: права в реальному часі (хто може жати стоп-кнопку, міняти ліміти).
Аудит: незмінні логи дій (хто/коли/що), SLA видачі трейс-пакету.
6) Управління сплесками і перевантаженням
Backpressure: черги перед «тендітними» апстрімами, деградація неключових фіч.
Rate limiting на рівні шлюзів і меш-політик; leaky/token bucket.
Autoscale за композитними сигналами (RPS, p95, lag, глибина черг).
A/B throttling: дозування фіч по сегментах/регіону для контролю ризиків.
7) Спостережуваність і SLO
SLI real-time:- Лайв-відео: e2e-затримка ≤ 300-800 мс, packet loss ≤ 0,5-1%.
- Критичні API: логін p95 ≤ 300-500 мс; депозит p95 ≤ 1,5-2,0 с; ставка p95 ≤ 150-250 мс.
- Шина подій: lag p95 ≤ 200-500 мс, доставка ≥ 99,9%.
- Co-edit/чати: латентність апдейтів ≤ 150-300 мс.
- Coverage трейсингу ≥ 95% по критичних шляхах; кореляція L3↔L7.
- War-room-дашборди: регіони, провайдери, PSP/KYC, контент, бюджет помилок.
8) Економіка real-time (Cost-to-Serve)
Cost per stream (бітрейт × хв) і per rps (API/шина), ціна «одного cut-over».
Вплив р95/помилок на CR депозиту/ставки → GGR/маржа.
Headroom для піків (30-50%) і стратегія економії (виключення зайвих вузлів поза піків).
9) Антипатерни
SPOF-шлюз або єдиний SFU/CDN без N + 1 і health-flip.
Ретраї без лімітів → «шторм» і дубль транзакцій/нагороди.
Глобальні блокування в ко-редакті → фризи, втрата дій.
Змішання прод/стейдж в реальному часі; тест на живих ПДн.
Відсутність time-sync → суперечки щодо «чесності» раундів/зрізів.
Фіча без прапорів: кожен фікс = реліз, немає миттєвого відкату.
PII «гуляє» між учасниками без токенізації та egress-контролю.
10) Чек-лист впровадження RTC
1. Визначте домени real-time (live, оффери, платежі, KYC, war-room) і їх SLO.
2. Розгорніть транспорт: WebRTC/SFU/CDN, WebSocket-шлюзы, QUIC, time-sync.
3. Введіть CRDT/OT для ко-редакту; саги та ідемпотентність для транзакцій.
4. Налаштуйте шину подій і rule-engine, фіча-прапори і progressive delivery.
5. Увімкніть Zero Trust, RBAC/ABAC, токенізацію, DPIA/DPA.
6. Зберіть спостережуваність: трейси, метрики, профайлінг, war-room-процедури.
7. Підготуйте DR/chaos-сценарії: падіння SFU/PSP/KYC/провайдера, cut-over ≤ 90 c.
8. Зв'яжіть з економікою: Cost-to-Serve, бюджет на пікові вікна, co-funding з партнерами.
9. Зафіксуйте шаблони артефактів: playbooks, SLO-лист, RACI, audit-trail.
11) Шаблони артефактів (коротко)
Runbook Live-столів/SFU: пороги, шифти, фліп-кнопки, тести.
Incident Playbook: контакти, пороги, ескалації, формат RCA.
Feature Toggle Sheet: прапори, регіони, відсотки, стоп-умови.
Data Sharing Matrix: поля, мета, правова база, термін зберігання.
Partner SLO Card: SLI, кредити/пенальті, SLA на трейс-пакет.
12) Дорожня карта еволюції
v1 (Foundation): WebSocket/RTMP, базові прапори, ручний war-room.
v2 (Integration): WebRTC/SFU на edge, сервіс-меш-політики, шина подій, co-edit (CRDT).
v3 (Automation): autoscale по SLO, rule-engine, адаптивний бітрейт/маршрутизація по SLI.
v4 (Networked Governance): міжпартнерські RTC-процеси, спільні PoP, предиктивні підказки ML.
Коротке резюме
Real-time - це не тільки відео і чат, це наскрізна синхронізація рішень і дій по всій мережі: транспорт (WebRTC/QUIC), події та узгодженість (CRDT/саги), безпека (Zero Trust), спостережуваність і SLO, плюс готовність до відмов. При такій архітектурі екосистема швидко реагує на піки та інциденти, масштабується без простою і дає гравцеві досвід «тут і зараз» при передбачуваній економіці.