GH GambleHub

High Availability и SLA

High Availability и SLA

1) Atamalar va biznes bilan aloqa

SLI (Service Level Indicator) - o’lchanadigan servis ko’rsatkichi (masalan, 2xx/3xx ≤ T ms muvaffaqiyatli so’rovlar ulushi).
SLO (Service Level Objective) - SLI maqsadli qiymati (mas. "99. so’rovlarning 95 foizi ≤ 300 ms").
SLA (Service Level Agreement) - mijoz oldidagi kontrakt majburiyati (buzilgan taqdirda jarimalar/kreditlar).
HA (High Availability) - SLO/SLAni bajarish imkonini beruvchi arxitektura va operatsion chora-tadbirlar.

Printsip: SLA SLOga, SLO esa kuzatiladigan SLIga tayanadi. SLA da siz o’lchamagan narsalarni va’da qila olmaysiz.

2) «To’qqiz» va maqbullik matematikasi

Davr uchun foydalanish imkoniyati =’ish vaqti/umumiy _ vaqt’. Mo’ljallar (yil uchun):
Foydalanish imkoniyatiMaks. oddiy/yil
99. 0%≈ 3 kun 15 soat
99. 5%≈ 1 kun 20 soat
99. 9%≈ 8 s 45 m
99. 95%≈ 4 soat 23 m
99. 99%≈ 52 m 34 s
99. 999%≈ 5 m 15 s

Kirish kompozitsiyasi

Ketma-ket zanjir («qizil yo’l» bo’yicha bog’liqlik):’A _ total = Π A_i' (har bir komponent natijani kamaytiradi).
Parallel aktiv-aktiv uzellari:’A _ total = 1 − Π (1 − A_i)’(zaxira yakunini oshiradi).

3) Aynan nimani o’lchash kerak (to’g "ri SLI)

Foydalanuvchi nuqtai nazari: asosiy operatsiyalarni muvaffaqiyatli yakunlash (login, depozit, chek-out) va ularning latentligi p99.
Soat yo’lagi: sirpanadigan derazalar (5/30/60 daqiqa) va mintaqalar bo’yicha yig’iladi.
Istisnolar: «rejalashtirilgan derazalar» SLOda, SLAda esa faqat shartnomada shunday deyilgan taqdirdagina hisobga olinadi.

SLI turlari:
  • Foydalanish imkoniyati: T. ≤ muvaffaqiyatli javoblar ulushi.
  • Sifati: p95/p99 latency.
  • Tarkibiy: «muvaffaqiyatli depozitlar ulushi ≤ 5 s».

4) Error Budget va yonish tezligi

Error Budget = `1 − SLO`. 99 uchun. Oylik oynaning 95 foizi 0 beradi. Xato/nuqson 05%.
Burn-rate: byudjetni sarflash tezligi (masalan, 4 × siz kunlik limitni 6 soat ichida iste’mol qilasiz).
Siyosat: tez yonganda - relizlarni to’xtatish, barqarorlashtirishga e’tibor qaratish, feature-freeze.

5) HA arxitekturasi: tugundan mintaqagacha

5. 1 Uzel/servis

N + 1: kamida bitta ortiqcha nusxa (Deployment ≥ 2, PDB, anti-affinity).
Resurslarni izolyatsiya qilish: CPU/RAM/IO limitlari, ustuvorliklar (PriorityClass).
Graceful shutdown/drain: Qayta boshlashda soʻrovlar uzilmagan.

5. 2 Zona/mintaqa

Multi-AZ: turli zonalarda replikalar, kross-zonali muvozanat, mustaqil quvvat/tarmoq.
Multi-region: aktiv-aktiv (qiyinroq: ma’lumotlar/konsistentlik) yoki aktiv-passiv (sodda: RPOdan yuqori).
Ma’lumotlar: pul/buyurtmalar uchun CP (kvorum/RAFT), kesh/vitrinalar uchun EC/AP.

5. 3 Tarmoq qatlami va perimetri

L7-LB с health-checks, retry/timeout/circuit-breaking.
Global trafik uchun GSLB/DNS/Anycast, qisqa TTL.
Egress-nazorat va tashqi PSP/provayderlargacha uzilishga chidamli kanallar.

6) Yiqilish o’rniga degradatsiya

Feature kill-switch (ficha-bayroqlar): tanqidiy boʻlmagan oʻchirish, «qizil yoʻl» ni saqlab qolish.
Soddalashtirilgan yoʻllarga oʻtish: sinxron → asinxron/navbat, «qayta ishlashga qabul qilindi».
Rate-limit/kvotalar: barchani tushirishdan ko’ra trafikni cheklash yaxshiroqdir.
Stale rejimlari: origin mavjud boʻlmaganda kesh/statik maʼlumotlarni berish.

7) Qaramliklarni boshqarish

Bog’liqlik xaritasi (service map): to’g "ri/tranzitiv, tanqidiy, har birining SLO.
Zaif bo’g "inlar: SLAsiz tashqi provayder - kesh/navbatga/dublikatga aylanadi.
Bulkhead-izolyatsiya: sekin yo’nalishlar uchun turli birikmalar/kvotalar.
Timeouts> Retries: qisqa taymautlar, dempotent operatsiyalari uchun maksimal 1 retray.

8) Operatsiyalar va o’zgartirishlar

Change management: relizlar/blue-green, SLO-geytlar, avtomatik orqaga qaytish orqali.
Rejalashtirilgan oynalar: uzunligi, davriyligi, kommunikatsiyalarini standartlashtiring.
Hodisalar: rollar (IC/Comms/Tech/DB), runbook’i, tuzatish harakatlari bilan postmortemalar.
Sekyuriti-iventlar: murosaga kelganda - «vahima-rejim» (read-only/tokenlar/rotatsiya/blokirovka).

9) Kuzatish va alerting

Har bir yo’nalish uchun RED-model (Rate, Errors, Duration).
SLI-dashbordlar: mintaqa va mijozlar segmenti bo’yicha foydalanish imkoniyati/yashirligi.
Burn-rate alertlar: tezkor (1h, 14. 4 ×), sekin (6h, 2 ×) - SLO buzilgunga qadar bo’lgan signal.
Nusxalar (Exemplars): metriklardan trace_id trassalariga oʻtish.
Sintetika: tashqi nuqtalardan namunalar (perimetr, to’lov flolari).

10) Nosozlikka chidamlilik testlari

Game-days: AZ/mintaqalarni uzib qo’yish stsenariylari, DB/keshlarning degradatsiyasi, tashqi provayderlarning ishdan chiqishi.
Chaos-instrumentlar: tarmoq foltlari (latency/loss), kill-pods, qayta yuklash CPU/IO.
DR-drills: Tier-0 tizimlar uchun RTO/RPO ishlab chiqish («Backaplar va DR» ga qarang).

11) SLAni loyihalash

«Kirish» taʼrifi: nima hodisa hisoblanadi (5xx, vaqt> T, domen xatolari).
Hisob-kitob oynasi: oy/chorak; rejali ishlarni kiritish/chiqarib tashlash.
Kreditlar/jarimalar: shkala (masalan, 99. 9–99. 99% - X%, undan past - Y%).
Mijozning majburiyatlari: integratsiya, oqilona doiradagi retralar, limitlar.
Iqlimlarning notifikatsiyalari va tartib-taomillari: muddatlari, formati, dalillar bazasi (logi/metrika).
Fors-major: yuridik ifodasi va chegaralari.

Misol (eskiz):
  • "SLI bo’yicha API foydalanish imkoniyati "muvaffaqiyatli ≤ 500 ms" 99 dan kam emas. kalendar oyda 95%. Rejali derazalar (48 soat uchun e’lon qilingan 60 min/oygacha) chiqarib tashlandi. 99 da. 90–99. 95% - 5% kredit; 99. 80–99. 90% — 10%; <99. 80% — 25%.»

12) To’qqizinchi

Har bir qo’shimcha «to’qqiz» yo’nalishsiz xarajatlarni oshiradi (ikki mintaqa, kvorumlar, provayderlar dubli, 24 × 7). Tiering SLOdan foydalaning:
  • Tier-0 (pul/buyurtmalar): 99. 95–99. 99%, multi-AZ, DR tayyor.
  • Tier-1 (asosiy fichlar): 99. 9–99. 95%, ko’p-AZ.
  • Tier-2 (tanqidiy emas): 99. 5–99. 9%, hodisalarda degradatsiyaga/to’xtashga yo’l qo’yiladi.

13) HA patternlari qatlamlar bo’yicha

Perimetri: CDN/edge, multi-CDN yoki GSLB, WAF, rate-limit.
Balanslash: L7 bilan outlier-ejection, taymaut/retrai, sticky/consistent-hash.
Ilovalar: gorizontal skeyl, readiness/liveness, PDB, topology spread.
Maʼlumotlar: leader + replicas, CP uchun quorum, L2 kesh, idempotency, PITR.
Navbatlar: ko’zgu/multiklaster, dedup, DLQ.
Sirlar/konfigrantlar: GitOps, atom snapshotlar, rollback.

14) Anti-patternlar

SLA o’lchash vositalari va tashqi sintetikasiz.
SPOF sifatida yagona zona/klaster.
Nazoratsiz retralar → «o’z-DDoS».
Issiq yo’lda uzoq tranzaksiyalar/mutekslar.
«Og’ir» migratsiya/relizlar kanareykalarsiz va qaytish rejasisiz.
Runbook va steykxolderlar bilan aloqa yo’qligi.

15) Joriy etish chek-varaqasi (0-60 kun)

0-15 kun

Tanqidiy foydalanuvchi SLIni aniqlash, Tier-0/1/2 darajalari boʻyicha SLOni koʻrsatish.
Burn-rate alertlar, SLO-dashbordlar, perimetrni sintetik tekshirishlarni yoqish.
SPOF: ≥ 2 ta replika, PDB, frontlar va tanqidiy DD uchun multi-AZ olib tashlansin.

16-40 kun

SLO-geyting va avto-qaytish bilan kanar relizlarini joriy etish.
Har bir «qizil yo’l» bo’yicha qaramlik xaritasi + kvotalar/pullar/taymautlar/SV.
Rejali oynalar va kommunikatsiyalar reglamenti, hodisa-xabarlar shablonlari.

41-60 kun

Game-day: AZ o’chirilishi, tashqi provayderning ishlamay qolishi, trafikning «bursti».
SLA va kreditlarni fakt bo’yicha qayta hisoblash, mijozlarga hisobotlarni e’lon qilish.
«To’qqiz» qiymatini qayta ko’rib chiqish va tirga o’tkazish.

16) Etuklik metrikasi

Tanqidiy yo’nalishlarning 95% ≥ SLI/SLO va burn-rate alertlari mavjud.
SLO xatolari relizlarni avto-muzlatish (policy) bilan birga keladi.
Multi-AZ qamrovi Tier-0 = 100%, muvaffaqiyatli DR-drills ≥ 1/chorak.
Aniqlash vaqti → mitigatsiya p50 <5 min, p95 <15 min.
«Release hodisalar» korrelyatsiyasi - olib boriladi va qisqartiriladi (rollback rate ↓).
Noxush hodisalar/kreditlar to’g "risidagi ommaviy hisobot - N ish kuni mobaynida.

17) Misollar va snippetlar

Burn-rate alert (qoidalar g’oyasi):
  • Tezkor: "SLO 99. 95%, oyna 1 soat, burn ≥ 14. 4× → page on-call».
  • Sekin: «6 soat, burn ≥ 2 × → ticket & monitoring».
Envoy — circuit breaking/outlier:
yaml circuit_breakers:
thresholds:
- max_connections: 200 max_pending_requests: 100 max_requests: 1000 max_retries: 1 outlier_detection:
consecutive_5xx: 5 interval: 5s base_ejection_time: 30s max_ejection_percent: 50
SLO tahlili bilan kanareyka (Argo Rollouts, g’oya):
yaml analysis:
templates:
- name: slo-burn metrics:
- name: error-rate successCondition: result < 0. 005 provider: prometheus
SLI formulasi namunasi:

SLI: fraction_of_good_requests = good(HTTP 2xx/3xx ≤ 500ms) / all(requests)
SLO: ≥ 99. 95% per calendar month, per region

18) Xulosa

High Availability - bu nafaqat klasterlar va replikalar, balki arxitektura, jarayonlar va metrikalarning kelishilgan to’plami: aniq SLI/SLO, real SLA, iqtisodiyotga ega «to’qqiz», yiqilish o’rniga degradatsiya, taymaut/kvota intizomi, kanareya relizlari, muntazam mashg’ulotlar va shaffof kommunikatsiya. O’lchanadigan va boshqariladigan bo’lsa, u lotereya emas, raqobatbardosh ustunlikka aylanadi.

Contact

Biz bilan bog‘laning

Har qanday savol yoki yordam bo‘yicha bizga murojaat qiling.Doimo yordam berishga tayyormiz.

Telegram
@Gamble_GC
Integratsiyani boshlash

Email — majburiy. Telegram yoki WhatsApp — ixtiyoriy.

Ismingiz ixtiyoriy
Email ixtiyoriy
Mavzu ixtiyoriy
Xabar ixtiyoriy
Telegram ixtiyoriy
@
Agar Telegram qoldirilgan bo‘lsa — javob Email bilan birga o‘sha yerga ham yuboriladi.
WhatsApp ixtiyoriy
Format: mamlakat kodi va raqam (masalan, +998XXXXXXXX).

Yuborish orqali ma'lumotlaringiz qayta ishlanishiga rozilik bildirasiz.