Quvvatni rejalashtirish va yuklamani oshirish
Qisqacha xulosa
Quvvat - bu kutilayotgan yuklama va nosozliklarda maqsadli SLOga bardosh berish qobiliyatidir. Asos:1. Talab prognozi (bazaviy trend + mavsumiylik + tadbirlar).
2. Yuklash modeli (Internet uchun open-model).
3. Mustahkamlik zaxirasi (headroom) va noto’g "ri budjet.
4. Kattalashtirish (gorizont/vertikal/avto) + cheklovchilar (rate-limit/backpressure).
5. Moliya: $/1000 RPS, $/ms p95, ssenariylar bo’yicha TCO.
Atamalar va metriklar
Throughput: RPS/QPS/CPS - haqiqiy o’tkazish qobiliyati.
Latency p95/p99: Foydalanuvchi yoʻllari uchun maqsadli SLO.
Saturation: CPU/xotira/IO/FD/ulanishlarni/navbatlarni yuklash.
Error rate: 5xx/timeout/429, davr uchun noto’g "ri budjet.
Headroom: eng yuqori trafikda bo’sh quvvat ulushi (30% ≥ tavsiya etiladi).
Burst: qisqa muddatli oʻsish (sekund/daqiqa), Spike: keskin oʻsish × N.
Bazaviy modellar va formulalar
Little’s Law (navbatli tizimlar uchun)
L = λ W
L - tizimdagi so’rovlarning o’rtacha soni, λ - kirishning o’rtacha intensivligi (RPS), W - tizimdagi o’rtacha vaqt. Navbatlar chuqurligini baholash uchun foydalidir.
Yuklash koeffitsiyenti (ρ)
ρ = λ / μ
μ - servis tezligi (100% CPUda RPS). ρ → 1 latentlik chiziqli boʻlmasa, ish nuqtasini ρ ≤ 0 tuting. 6–0. 75.
Safety factor/zaxira
Capacity_required = Peak_load (1 + Headroom) Degradation_factor
Bunda Degradation_factor N rad etishni, keshning degradatsiyasini, bitta RO/mintaqaning yo’qolishini hisobga oladi (masalan, 1. 2).
Talab prognozi
1. Tarix: kunduzgi/haftalik profillar, mavsumiylik, voqealar bilan bog’liqlik (o’yinlar/oqimlar/to’lovlar).
2. Eventlar: ssenariy koeffitsiyentlari (oddiy kun × 1, turnir × 2. 3, final × 3. 5).
3. Fluktuatsiyalar manbalari: marketing kampaniyalari, relizlar, botlarning anomaliyalari.
4. Prognoz birliklari: yo’nalishlar bo’yicha RPS (login, lobby, catalog, payments), CPS TLS, QPS DB, IOPS disk, egress Gbit/s.
5. Ishonch: ikkita stsenariyni saqlang - konservativ va tajovuzkor.
Yuklamani modellashtirish
Open-model (Poisson-ga oʻxshash): Ommaviy API/vebga mos keladi - sizing uchun foydalaning.
Closed-model (VU + think-time): ichki ketma-ketliklar uchun mos; birlashtiring.
Yo’nalishlar aralashmasi: endpointlarga og’irlik ulushlari; nafaqat «issiq», balki «qimmat» (ro’yxatdan o’tish, depozit) ham kiriting.
Shuni unutmang: retrajlar, navbatlar, sheriklar limitlari (PSP, uchinchi tomon API).
Mustahkamlik zaxirasini loyihalash
Maqsadli Headroom: ≥ 30% (Internet uchun); to’lov yadrosi va tanqidiy yo’llar uchun - 40-50%.
N + 1/N + 2: SLO buzilmasdan 1-2 instansiya/zonaning rad etilishiga bardosh beramiz.
Multi-region: har bir mintaqa umumiy cho’qqining 60% ≥ tortadi (qo’shni yo’qotishdan omon qolish uchun).
Degrade rejimi: ikkinchi darajali funksiyalarni o’chirib qo’ying, payloadni kamaytiring, kesh/stab javoblarini yoqing.
Sizing
Tarmoq/Edge
Frontdagi CPS/RPS, TLS-handshake p95, resumption ≥ 70%, egress Gbit/s.
Anycast/Geo-routing, CDN/WAF limitlari (oldindan kelishish).
Zaxira: link/aplink ≥ pik × 1. 3, H3 uchun UDP/443 zaxirali SYN backlog.
Balanschilar/Proksi
Instansiyaga RPS, open connections, navbatlar, CPU/IRQ.
Keepalive va connection pooling - orqa panellarga ulanishni kamaytiradi.
Zaxirasi: ρ ≤ 0. 7, limiter по CPS/RPS per route.
Ilovalar
Yadro uchun maqsadli ishlash (RPS/core) platoda.
Pullar (thread/DB/HTTP) - chegaralarga tayanmaslik.
Zaxirasi: avtoskeyl 60-70% gacha va latency-trigger (p95).
Keshlar
Hit-ratio, hajm hotset, eviction, replika.
Zaxira: xotira ≥ 1. 2 × hotset, tarmoq headroom ≥ 30%.
Maʼlumotlar bazasi
QPS/TPM, p95 soʻrovlar, blokirovka, bufer kesh, WAL/replication lag.
IOPS va disk latency - p95 kalitidir.
Zaxira: ish nuqtasi CPU 50-65%, lag replika <maqsadli; shardalash rejasi va read-replicas.
Disklar/Omborlar
IOPS (4k/64k), throughput, fsync cost.
Zaxirasi: IOPS ≥ cho’qqi × 1. 5, maqsadli oynada latency p95; jurnal/ma’lumotlar uchun alohida pullar.
GPU/ML (agar onlayn inferens mavjud bo’lsa)
Samples/s, latency, VRAM headroom, batching.
Zaxira: «arra» yuklamasidagi batch-parametrlar, warm-pool GPU.
Avto-masshtablash
HPA/KEDA: CPU + maxsus metriklar (p95 latency, RPS, navbat).
Warm pools: eventlar oldidagi oldindan isitilgan instantsiyalar.
Step-scaling: «kesmaslik» uchun cooldown bilan qadamlar.
Reaksiya vaqti: front qatlami uchun 1-2 daqiqa T_scale ≤ nishonga olamiz; DB uchun - oldindan.
Cheklovlar va backpressure
Rate-limit по IP/ASN/device/route; hamkorlar uchun kvotalar.
TTL bilan navbatlar, «xushmuomalalik» dan voz kechish (429/grey-vol orqali) taymautlardan oldin.
Idempotentlik: to’lovlar uchun kalitlar; budget + jitter bilan retray.
Request collapsing/SWR: portlash paytida originni uygʻotmaslik.
Tez hisob-kitob namunasi
Berilgan: API bo’yicha 35k RPS cho’qqisi prognozi, p95 ≤ 250 ms, CPU 60% da o’rtacha service time 8 ms → μ ≈ 125 RPS/core, 8 yadro → ~ 1000 RPS/instans.
1-qadam (zaxirasiz): 35 instans.
2-qadam (headroom 30%): 35 × 1. 3 = 46.
3-qadam (bitta AZ dan voz kechish, + 20%): 46 × 1. 2 ≈ 55.
4-qadam (yaxlitlash + issiq zaxira 10%): 61 instans.
Tekshirish: ρ ≈ 35k/( 61k) ≈ 0. 57 - yashil zonada.
Moliyaviy model (FinOps)
$/1000 RPS qatlamlar bo’yicha (edge, proxy, app, DB).
$/ms p95 (dumini pasaytirish qiymati).
TCO stsenariylari: on-demand vs reserved vs spot (uzilish xavfi bilan).
Quvvatlar rejasi: akkauntlar/klasterlarning choraklik limitlari, bulutlar kvotalari, PSP/CDN limitlari.
Muvaffaqiyatsizlikka tayyorlik va DR
Multi-AZ/region: har bir yelka 60% yukni ≈.
Failover-reja: withdraw Anycast, GSLB o’zgartirish, TTL ≤ 60-120 s.
Tanqidiy qaramliklar: PSP/bank limitlari, ikkilamchi provayder.
Davriy mashqlar: PoP/BG/kesh oʻchirilgan game day.
Kuzatuvchanlik va erta to’yinganlik signallari
p95/p99 balandligi va barqaror kirish navbatlari.
Hit-ratio keshning tushishi, origin egressning o’sishi.
Retransmits/ECN CE ko’payishi, TLS resumption pasayishi.
429/timeout va retry-rate.
DB uchun - ziddiyatlarning o’sishi, checkpoint time, WAL fsync.
Operatsion amaliyotlar
Capacity review har oyda: fakt vs reja.
Change windows: freze yadro va chegaralar.
Prewarm (CDN/DNS/TLS/pullar) cho’qqidan 10-30 daqiqa oldin.
Limitlar versiyasi: Git’da rate-limit/pullar konfiglarini qayd qiling.
iGaming/fintech uchun o’ziga xos
Turnirlar/o’yinlar: spike + plateau profillari, botlar uchun kulrang yo’nalishlar, ro’yxatdan o’tkazish/depozitlarning alohida limitlari.
To’lovlar/PSP: provayder/usul bo’yicha kvotalar, fallback-yo’nalishlar, egress-IP pullar, SLA Time-to-Wallet.
Kontent provayderlari: studiyalar bo’yicha taqsimlash, issiq keshlar, shard-pullar.
Antifrod/AML: qoidalar/skoring uchun limit, cho’qqida light-qoidalargacha degradatsiya.
Joriy etish chek-varaqasi
- Cho’qqilar prognozi (baza/mavsum/tadbirlar), ikkita stsenariy.
- SLO/noto’g’ri byudjet va maqsadli headroom ≥ 30%.
- Sizing (edge/proxy/app/cache/DB/IO/tarmoq).
- Cheklovlar: rate-limit, navbatlar, idempotency, retry-budget.
- HPA/KEDA + warm pools; event oldidagi targ’ibot rejasi.
- Multi-AZ/region, failover-pleybuklar, TTL va GSLB.
- Bulutlar/PSP/CDN kvotalari kelishilgan va hujjatlashtirilgan.
- Kuzatish: capacity dashbordlari, erta to’yinganlik signallari.
- DR mashqlari va muntazam capacity-review.
Tipik xatolar
Dumsiz/portlashsiz oʻrtacha RPS rejasi.
ρ≈0. 9 «qog’ozda» - latentlik eng kichik shovqinda portlaydi.
Tashqi servislar limitlari ignori (PSP/CDN/DB-klaster).
Degrade va backpressure - kaskad fayllari yoʻq.
Avto-masshtab oldindan isitmasdan - «keyin» cho’qqisiga etib boradi.
Barcha qatlamlar uchun bitta headroom - tor joy ko’chib o’tadi.
Mini-pleybuklar
Eng yuqori voqeadan oldin (T-30 daqiqa)
1. minReplicas/target HPA’ni kattalashtirish, warm pool’ni yoqish.
2. CDN/DNS/TLS/konnektlarni isitish, keshlarni isitish.
3. Kelishuv asosida pullar limiti va PSP kvotasini oshirish.
4. Kulrang yo’nalishlarni/bot-filtrlarni yoqish, og’ir endpoyntlarni toraytirish.
Mintaqani qisman yo’qotish
1. GSLB → qo’shni mintaqa, TTL 60-120 s.
2. Degrade usulini yoqish (kesh/soddalashtirilgan berish).
3. PSP/egress-IP limitlarini qayta taqsimlash.
4. Maqom kommunikatsiyasi, p95/xatolarni nazorat qilish.
Retraylarning koʻtarilishi
1. Retry-budgetni pasaytirish, backoff + jitterni yoqish.
2. request-collapsing/SWRni GETga qoʻshish.
3. «Shovqinli» ASN uchun rate-limit vaqtincha kuchaytirilsin.
Jami
Quvvatni rejalashtirish - bu talab prognozi + muhandislik modeli + mustahkamlik zaxirasi + operatsion vositalar. SLO va headroom’ni rasmiylashtiring, tashqi chegaralarni hisobga oling, kattalashtirish va degradatsiyani avtomatlashtiring, «millisekundlar qiymatini» o’lchang va muntazam capacity-review o’tkazing. Shunda yuk ortishi xatarga emas, balki biznesning boshqariladigan metrikasiga aylanadi.