Yük testi: oyunçu profilləri və trafik zirvələri
1) Niyə «orta temperatur» deyil, profilləri modelləşdirmək
iGaming yükü yüksək partlayıcıdır: promo/turnirlər/axınlar RPS-in bir neçə dəfə sıçrayışını verir və hərəkətlərin paylanması qeyri-bərabər olur (giriş → depozit → dərəcələr/çıxarış). Test seqmentlərin davranışını əks etdirməlidir (yeni başlayanlar, VIP, «bonus-hunterlər», mobil), əks halda «yaşıl qrafiklər» və qırmızı hadisələr alacaqsınız.
Açar SLO (30 gün üçün nümunə):- Giriş: uğur ≥ 99. 9%, p95 ≤ 250 ms
- Depozit: müvəffəqiyyət ≥ 99. 85%, p95 ≤ 400 ms
- Bahis (WS): p95 message RTT ≤ 120 ms, disconnect rate ≤ 0. 5%
- Oyunun başlanğıcı: uğur ≥ 99. 8%, p95 ≤ 800 ms
2) Oyunçu profilləri (davranış ssenariləri)
A. Newbie (yeni oyunçu) - 25-40% pik trafik
Yol: qeydiyyat → giriş → görünüş promo → depozit (kiçik məbləğlər) → başlanğıc 1-2 slots
Xüsusiyyətlər: UX səhvlərinin yüksək payı, ödənişlərin retrası, səhifələr arasında sıçrayışlar
B. regular (geri) - 40-50%
Yol: giriş → sürətli depozit/depozit olmadan → 3-5 oyun → nadir nəticə
Xüsusiyyətlər: sabit sessiyalar, WS-də p95> 200 ms-ə həssas
C. bonus-hunter (promo) - səhmlər üzrə 10-20%
Yol: qeydiyyat → bonus aktivləşdirilməsi → minimum dərəcələr → sürətli geri çəkilməyə cəhd
Xüsusiyyətlər: k '/promo/claim 'sıçrayışları, retrajlardan sui-istifadə, düzgün limitlər olmadan tez-tez 429
D. high-roller/VIP - ≤ 1%, lakin yüksək çek
Yol: giriş → böyük depozit → canlı oyunlar/yüksək bahislər → çıxış
Xüsusiyyətlər: Oyun provayderinin hər hansı bir gecikməsinə/faylına həssas, SLA ödənişləri kritik
E. bettor (idman/canlı)- Yol: giriş → kotirovka abunəsi → «dar pəncərələrdə» tez-tez bahislər (10-30 saniyəyə qədər)
- Xüsusiyyətlər: WS/Cache əmsallarında pulsasiya yükü, qol/VAR-da sıçrayışlar
3) Trafik və vaxt modelləri
Open vs Closed model
Open (Poisson, arrivals/sec) - ictimai promo və axınlar üçün uyğundur (istifadəçilər «özləri gəlir»).
Closed (fiks. think-time ilə virtual istifadəçilərin sayı) - sabit sessiyalar (VIP, canlı oyunlar) üçün.
Trafik nümunələri:- Ramp: xətti sürətləndirmə x1 → x5 10-20 dəq
- Burst: «partlayış» x3-x10 30-120 s (bonus/cekpot/qol elanı)
- Dalğa: hər 5-10 dəqiqədə bir daraq (axın/turnir raundları)
- Soak: 2-12 saat sabit yük (sızma, GC, deskriptorlar, deqradasiya)
4) Kritik flow və metrika
Autentifikasiya və profil
RPS on '/login ', '/2fa/verify', p95/p99, error-rate, lock/ratelimit-up
Ödənişlər
Oyun geytləri
Slot/canlı masanın işə salınması: success-ratio, time-to-first-spin, provayderin uğursuzluğu
WebSocket: zirvədə birləşmələr, mesajlar/san, RTT, rate-limit/429, reconnects/min
Promo/bonuslar
'/promo/claim ', '/freespin/activate': 200/4xx/5xx, 409 pay/rəqabətli yeniləmələr, cüzdan kaskadları
Saxlama və növbələr
Saturation: CPU, DB-connections, pool-timeouts, queue lag, GC pauses
5) Geo və şəbəkə reallığı
Bazarlar (EU/LatAm/MEA/APAC) və ASN-mix (mobil şəbəkələr, hostinqlər).
Gecikmə edge → origin (Anycast/CDN), mobil RTT, paket itkiləri.
A/B: CDN və bypass (origin) - «təmiz» arxa planın qiymətləndirilməsi üçün.
6) Test məlumatlarının dizaynı
Təxəllüslü hesablar, regionlar üzrə BIN-kartlar, valyutalar, KYC-hallar.
Real davranış taymingləri: casual üçün 1-7 s think-time, 0. 3–1. Canlı bahislər üçün 2 s.
Qeyri-idempotent əməliyyatlara nəzarət (pul/depozit): PSP sandbox üçün quru rejim, cüzdan qapaqları.
Anti-frod/bot filtrləri: test ASN/IP/cihazların whitelist, əks halda WAF/anti-bot standı «boğacaq».
7) Test planı (azad/promo üçün şablon)
1. Smoke yük: 10-20% pik, 30 dəq
2. Capacity ramp: x1 → target → x1. Hədəf zirvəsindən 5, addım başına 10-15 dəq
3. Burst seriyası: cari səviyyədən x3-x5 üçün 60-120 s 3-5 dalğa
4. Soak: 4-8 saat 60-80% pik (sızma, deqradasiya)
5. Failover/Chaos: bir PSP/PoP-nin bağlanması, oyun provayderinin deqradasiyası, bir shard DB-nin düşməsi
6. WS-fırtına: 2-3 dəqiqə ərzində kütləvi reconnect + 5-10 × mesajlar
7. Promo fırtına : /promo/claim + qeydiyyat + depozit 60 saniyə «pəncərə»
Çıxış meyarları: bütün SLO yaşıl zonada; headroom ≥ 30% CPU/konnektlər; PSP kvotaları keçilmir; test sonra heç bir artım növbələri və p99.
8) Zirvə saxlamaq üçün infrastruktur nümunələri
Warm-pool/provisioned concurrency (funksiyalar/konteynerlər), pre-scale promosyon əvvəl.
Connection pooling və upstream limitləri (DB/PSP) + sorğu növbələri.
Idempotency keys üçün depozitlər/vebhuk.
Backpressure: 429/503 s 'Retry-After', «ağır» rutların deqradasiyası (report/axtarış).
Cache/edge-cache əmsalları və statik-metadata oyunlar.
9) Anti-reqress: ilk növbədə «qırılır»
Həddindən artıq DB hovuzları → p99 böyümə və time-out
Kütləvi balans yeniləmələri zamanı wallet-locking- PSP-rate limits → retrai və dubl uçqun
- Batching olmadan minlərlə abunə üçün WS-broadcast
- Giriş/depozitdə çox aqressiv WAF qaydaları → FPR
10) Test zamanı müşahidə
Dashboard RED/USE + biznes huniləri (giriş → depozit → bahis → çıxış).
«Yavaş «/səhv sorğular üçün end-to-end treyslər (100% səhv sample).
Test mərhələləri (ramp/burst) metrik/log.
Fərdi PSP panelləri/oyun provayderləri, retraj növbəsi, idempotency hitləri.
11) Komanda və proses
War-room: performans mühəndisi, arxa plan, SRE, risk/ödənişlər, WAF/təhlükəsizlik, məhsul.
Runbook: p99 ilə nə edirik> hədəf, yükü necə azaltmaq, provayderdən kimi çağırmaq.
Hesabat: SLO, bant genişliyi, dar yerlər, qiymət, kod/memarlıq/kvota üzrə tövsiyələr.
12) Kapasiti planı: oyunçuların sayından RPS-ə
Qiymətləndirmə (nümunə):- Zirvədə eyni vaxtda oyunçular: 50k
- Orta hərəkət tezliyi: 0. 25–0. Oyunçu başına 5 req/s (mobil aşağıda, canlı yuxarıda)
- Qiymətləndirmə API RPS: 12. 5k-25k + xidmət sorğuları (cüzdan, provayderlər, cache)
- WS: masa/mövzuda 30-60k aktiv konnektlər, 3-8 msg/s
- Burst və retraya 30-50% headroom əlavə edin
13) Stend hazırlığı yoxlama siyahısı
- Məlumatlar: hesablar/cüzdanlar/kartlar/valyutalar/ölkələr/oyunlar, təxəllüslü
- Ödəmə izolyasiyası: sandbox + vebhuk qapaqları, «canlı» silinmələrin qadağan edilməsi
- Edge/CDN/WAF Prod kimi; test ASN üçün «yumşaq» rejimdə antibot
- Müşahidə: daşbordlar, alertlər, izləmə daxildir
- Autoscale və warm-pool özelleştirilmiş; hovuzların/konnektlərin limitləri sənədləşdirilmişdir
- «Ağır» fiç üçün kanarya bayrağı (reports, kütləvi ixrac)
14) Alətlər (göstəricilər)
Generatorlar: k6, Gatling, Locust (HTTP/WS), JMeter (WebSocket plugin daxil olmaqla)
Fid emulatorları: xüsusi kotirovka skriptləri/oyun provayderləri
Trafik replay: anonimləşdirmə və normallaşdırma ilə tcpreplay/ingress-güzgü
15) Profil nümunəsi «Promo turniri, başlamazdan 60 saniyə əvvəl» (case)
Dalğa − 5 dəq → 0:- Open arrivals: 400 → 2 500 req/s (login/refresh)
- '/promo/claim ': bursts 1 000 rps 3 × 20 s
- WS: + 15k connect, + 5 msg/s «leaderboard» mövzusunda
- Ön qızdırma və warm-pool
- Rate-limit '/promo/claim ': 10/min IP, 2/min hesab, 30 saniyə mənfi cavab cache
- İdempotentlik və bonus ödənişlərinin növbəsi (batch 50-100/takt)
- «Yumşaq» 429 ilə 'Retry-After' + UI-tərəqqi
Uğur meyarları: SLO login/depozit deqradasiyası yoxdur, p95 WS <150 ms, <0. 5% claim səhvləri, heç bir şişirtmə növbələri.
Xülasə
iGaming yükləmə sınağı «end-point atış» deyil, davranış modelləşdirməsidir. Əvvəlcə SLO və oyunçuların profillərini müəyyənləşdirin, sonra trafik modelini seçin (açıq/qapalı), geo və PSP limitləri ilə real giriş/depozit/bahis/promo ssenariləri qurun, bursts və soak sınaqdan keçirin, müşahidə qabiliyyətini yandırın və avtoskeyl hazırlayın. Nəticəni kapasiti planı və runbook ilə düzəldin - belə ki, trafikin zirvələrini sürprizlər və dönüşüm itkisi olmadan qarşılayacaqsınız.
