Kross-mintaqaviy masshtablash
(Bo’lim: Ekotizim va Tarmoq)
1) Nima uchun bu zarur?
Kross-mintaqaviy miqyosda ko’paytirish - bu bir nechta geografik mintaqalarda ekotizimni (ilovalar, ma’lumotlar, hodisa shinalari va tarmoq xizmatlari):- kechikishlarni kamaytirish va QoE (latency-driven routing),
- mintaqa darajasida (disaster class),
- mahalliy talablarga (ma’lumotlarni mahalliylashtirish, komplayens),
- O’zbekiston Respublikasi
- alohida zonalardagi mustaqil reliz sikllari va tajribalar.
2) Maqsadli SLO va bazaviy prinsiplar
Latency budjeti: asosiy yo’llar uchun p95/p99 (avtorizatsiya, to’lovlar, o’yin raundlari, vebxuklar).
Availability: ≥ 99. Mintaqaga 9% va 99 ≥. 95% global tekislikda.
Consistency by design: RPO/RTO modellarini va domenlar boʻyicha muvofiqlik darajasini aniq tanlash.
Idempotency/Exactly-once-semantics: mintaqalar chegarasida.
Observability: Mintaqalar o’rtasidagi o’zaro bog’lanish.
3) Joylashtirish va trafik modellari
A. Active-Active (multi-master o’qish/yozish)
Afzalliklari: minimal kechikish, gorizontal masshtablanish, yumshoq fayloverlar.
Kamchiliklar: ziddiyat-rezolyutsiyaning murakkabligi, narxning oshishi.
B. Active-Passive (cold/warm standby)
Afzalliklari: sodda amalga oshirish, oldindan aytib bo’ladigan yaxlitlik.
Kamchiliklar: masofadan foydalanuvchilar uchun ortiqcha kechikish, oʻtish vaqti.
C. Active-Read Replica (hybrid)
Ijobiy tomonlari: lokal tezkor o’qish, bir mintaqadagi konsistentlik nuqtasi.
Kamchiliklar: lag bilan replikatsiya qilish; yozuv markaziy.
4) Tarmoq tekisligi va yo’nalishi
GSLB/GeoDNS/Anycast: foydalanuvchini eng yaqin sogʻlom mintaqaga yuboradi.
Salomatlik sinovlari va vazn siyosati: latency-aware, capacity-aware, cost-aware.
Edge/PoP tugunlari: TLS-terminatsiya, WAF, rate-limits, statika va API-javoblarni keshlash.
Ichki bog’liqlik: xususiy mintaqalararo kanallar, egress-nazorat, Zero Trust.
5) Ma’lumotlar: kelishuv strategiyalari
Domenlarni quyidagi talablarga qarab ajrating:- Strong (to’lov tranzaksiyalari, balanslar, limitlar): yagona rahbar, master-mintaqaga «write-through», sinxron invariantlar.
- Timeline/Session (oʻyin voqealari, telemetriya): asinxron replikatsiya, upsert/append-only.
- Catalog/Reference (kontent, konfiguratsiyalar): multi-region kesh + yumshoq konsistentlik.
- Mintaqa/tenant boʻyicha Sharding, CRDT/mavzu sohasini qulflash bilan Multi-primary, voqealarni ishonchli chop etish uchun Outbox/Transaction log.
6) Hodisa shinasi va navbatlar
Federated event bus: lokal klasterlar (masalan, «mintaqaviy topiklar») + mintaqalararo replikatsiya.
Determinik ishlov berish uchun kalit (player_id, transaction_id) boʻyicha ordering.
Replay/Backfill: Voqealar daftarini saqlash, message-key deduplikatsiyasi.
Dead-letter/Retry siyosati: eksponensial backoff, poison-message karantini.
7) Qoplamalarni keshlash va kelishish
Tier-kesh: L1 (jarayon), L2 (mintaqa), L3 (edge).
Invalidation: kalit va o’zgarishlar topikasi bo’yicha (pub/sub-nogironlik).
Stale-while-revalidate: maʼlumotlar va kontent uchun.
Cache keys mintaqa va sxema versiyasi bilan kelishmovchiliklarni oldini olish uchun.
8) Foydalanuvchi bo’yicha identifikatsiyalash, sessiyalar va yo’naltirish
Mintaqalararo oʻtishlarni minimallashtirish uchun user_id/tenant_id boʻyicha Sticky-routing.
Global ID: diagnostika uchun mintaqaviy prefikslarni o’z ichiga olgan yuqori entropiyali, saralanadigan (ULID/KSUID).
Sessiyalar: mintaqaviy + umumiy refres-kontur (OIDC), migratsiyada qayta autentifikatsiya.
9) Xavfsizlik va komplayens
Ma’lumotlarni mahalliylashtirish: tegishli mintaqaning «ishonch zonasi» dagi shaxsiy va moliyaviy ma’lumotlar.
Kriptografiya: Mintaqaviy kalitlar segregatsiyasi bilan KMS, aniq rotatsiya va «envelope encryption».
Tarmoqni segmentlash: eng kam imtiyozlar prinsipi, mintaqaviy rollarga ega servis-hisoblar.
Audit: o’zgarmas loglar, PII/PCI’ga kirishni izlash.
10) Hodisalarni kuzatish va boshqarish
Global trace-id, voqealar shinasi orqali kontekstni targ’ib qilish.
Metriklar va alertlar: alohida SLO per-region va agregatsiyalangan global; «qaysi mintaqa tanazzulga yuz tutmoqda» kontekstidagi alertlar.
«Yashirin/xato/yuk» dashbordlari: p50/p95/p99, saturation, navbatlar, lag replikatsiya.
Chaos & GameDays: mintaqaviy uzilishlar, kanallarning sekinlashishi, sig’imning pasayishi.
11) Tarqatish va versiyalar
Regional Blue-Green/Canary: blast-radius cheklangan mustaqil chiqishlar.
Geo-targeting bilan feature-flags: mintaqalar va trafik segmentlari bo’yicha.
Schema evolution: ikki yo’nalishli moslik (backward/forward), «expand-migrate-contract».
12) Iqtisodiyot va xarajatlarni boshqarish
Capacity-planning: soatlar/kunlar/mavsumlar bo’yicha; eng yuqori hodisalar uchun buferlar.
Cost routing: gibrid siyosat (agar ikkita hudud kechikish bo’yicha teng bo’lsa, arzonroqni tanlaymiz).
Egress-optimallashtirish: lokal agregatsiya/siqish, deduplikatsiya, kesh-xitlar.
Unit-economics: hududlar bo’yicha so’rov/o’yin raundi/tranzaksiya qiymati.
13) Xatarlar va anti-patternlar
Butun domen uchun «Yagona global haqiqat» → ortiqcha mintaqalararo sinxronlashuvlar.
Yashirin mintaqalararo bogʻliqliklar (boshqa birovning indeksi/keshini oʻqish).
Mintaqaviy limitlar va circuit-breakers yo’qligi.
Mintaqalar o’rtasidagi sxemalar/protokollarning kelishilmagan versiyalari.
14) Joriy etish chek-varaqasi
1. (Strong/Eventual) domenlarini va konsistentlik talablarini aniqlash.
2. Domenlar boʻyicha modelni (Active-Active/Active-Passive/Hybrid) tanlash.
3. Yo’naltirishni loyihalash (GSLB, health-tekshirish, sticky-policies).
4. Saqlashni loyihalash (sharding, replikatsiya, outbox).
5. Idempotency-kalitlar va duplikatsiyani kiritish.
6. Observability (traces/metrics/logs) ni global korrelatorlar bilan qurish.
7. Maʼlumot lokalizatsiyasini moslash.
8. DR-kunlar va muntazam failover-mashg’ulotlarni avtomatlashtirish.
9. Iqtisodiy metrika va byudjet gvard-reyllarini joriy etish.
10. Mintaqalar boʻyicha SLO/xato/hodisalarni kataloglash.
15) Namunaviy referens-pattern
Edge qatlam: Anycast + WAF + Global kesh.
per-region API-shlyuzi: avtorizatsiya, kvotalar, yo’nalishlar.
Servis qatlami: lokal DB va mintaqaviy navbatlarga ega mikroservislar.
Maʼlumotlar: tanqidiy yozuvlar uchun master-mintaqa; mintaqaviy replikalar/shard klasterlari.
Hodisalar: lokal topiklar, mintaqalararo konnektorlar bilan replikatsiya qilish; iste’molchilar uchun dedup.
Observability: unifikatsiyalangan telemetriya, global trace-id.
16) iGaming/fintech-ekotizimlar uchun qo’llash
O’yin raundlari: natijani master-domeynda qayd etish kafolati bilan lokal ishlov berish.
To’lovlar va KYC: qat’iy konsistentlik, mintaqaviy «ishonch zonalari».
Promo va kontent: agressiv keshlash + SWR, edge-nogironligi.
Vebxuki sheriklarga: retrajli navbatlar, yetkazib berish kafolati (at-least-once + qabul qilgichdagi idempotentlik).
17) KPI va salomatlik metrikasi
p95 latency har bir mintaqada va global miqyosda asosiy yo’llar bo’yicha.
Xato darajasi 4xx/5xx, kesh-xit ulushi, replikatsiya orqasi.
DR almashtirish vaqti, muvaffaqiyatli DR mashqlar chastotasi.
Hududlar bo’yicha 1 k so’rovning narxi, uzel uchun egress/ingress.
18) Evolyutsiya (iteratsiya) rejasi
1. Phase-0: bitta mintaqa + kesh.
2. Phase-1: read-replica, GSLB kabi ikkinchi mintaqa.
3. Phase-2: gibrid yozuv (qisman Active-Active domenlari).
4. Phase-3: latency-kritik domenlar uchun toʻliq formatli Active-Active, avtonom relizlar.
19) FAQ
Hamma joyda Active-Active qilish mumkinmi? Yo’q. Domenlarni mustahkamlik va iqtisodiyot bo’yicha bo’ling.
Yozuv mojarolari bilan qanday kurashish mumkin? CRDT/version/pessimistik liz-loki, determinizatsiya qilingan merj qoidalari.
Qonuniy talablar haqida nima deyish mumkin? PII/moliyaviy maʼlumotlarni mintaqaviy «ishonch zonalarida» saqlang, anonimlashtiring va mintaqalararo tahlillar uchun birlashtiring.
Qanday sinash kerak? Muntazam GameDays: mintaqani izolyatsiya qilish, kanallarni buzish, ommaviy retrajlar.
Qisqacha xulosa: kross-mintaqaviy masshtablash - bu «sehrli tugma» emas, balki fanlar to’plami: to’g’ri yo’naltirish, ma’lumotlar va hodisalarni domen bo’yicha ajratish, qat’iy telemetriya, boshqariladigan konsistentlik va iqtisodiy nazorat. Tizimni domenlarga bo’ling, har bir domen uchun modelni tanlang va muntazam DR mashqlari orqali jamoani o’qitishni avtomatlashtiring.