GH GambleHub

Texnologiyalar və Infrastruktur → CDN şəbəkəsi və məzmunun önbelləklənməsi

CDN şəbəkələri və məzmun caching

1) Niyə CDN və cache

CDN (Content Delivery Network) RTT və TTFB-ni azaldır, origini boşaltır və P95/P99 quyruqlarını sabitləşdirir. iGaming/Fintech üçün bu:
  • Kataloq, assets, promo, media üçün sürətli ilk bayt.
  • Pik sabitlik (turnirlər/tədbirlər) partlayıcı artım origin-güc olmadan.
  • Egress qənaət və proqnozlaşdırıla bilən dəyəri.
  • Geo-nəzarət (tənzimləyici, məzmunun lisenziyalaşdırılması).

2) Əsas caching strategiyaları

2. 1 Cache edilə bilən cavablar

Statik: JS/CSS/şriftlər/nişanlar - uzun TTL (30-365 gün) + file-hash adı.
Yarımstatika: oyun kataloqları, bannerlər, konfiqlər - TTL + 'stale-while-revalidate'.
API GET/HEAD: referanslar, qiymətlər, liderbordlar - qısa TTL (5-120 san) düzgün açarı ilə.

2. 2 Başlıqlar

`Cache-Control: public, max-age=600, stale-while-revalidate=300, stale-if-error=600`

'ETag '/' Last-Modified' şərti sorğular üçün (revalidation).
'Surrogate-Control '/' CDN-Cache-Control' (əgər provayder dəstəkləyirsə).
Şəxsi məlumat üçün: 'Cache-Control: no-store' (yalnız 'no-cache' deyil).

2. 3 Keş açarı (cache key)

Əsas: üsul + URL yolu + cavab təsir query parametrləri.
Əlavələr: 'Accept-Encoding' (gzip/br), 'Accept' (json/webp/avif), lokal ('Accept-Language'), məzmuna təsir edərsə region/valyuta.
Təsadüfi başlıqların (cookies, trace ids) açarına düşməkdən çəkinin.


3) Vary və cookies idarə

'Vary: Accept-Encoding, Accept, Accept-Language' - minimum tələb olunan dəst.
Cashable yollar üçün CDN-də stripping cookie: whitelisted istisna olmaqla (məsələn, AB bayraqları) hər şeyi çıxarırıq.
Session identifikatorlarını alt domenlərə/cached content xaricindəki yollara köçürün.


4) TTL nümunələri və təravət

Immutable Static: 'Cache-Control: public, max-age = 31536000, immutable' + fayl adı versiyası.
SWRO/SIE: 'stale-while-revalidate' və 'stale-if-error' - origin problemlərində UX-sabitlik.
Partitioned TTL: oyunların kök siyahısı - 30-60 san; kart oyunu - 5-10 dəq; bannerlər - 30 dəq.
API qarışığı: əsas kataloqlar - 5-30 dəq; valyuta/limitlər - 1-5 dəq; Liderbord ― 2-15 san.


5) Tiered caching и origin shield

Tiered/Regional caches: edge keçən sorğular origin əvəzinə regional «shield» döyülür.
Faydaları: origin daha az MISS, «fırtına» hamarlanması, daha ucuz egress.
Qalxanları ən yüksək trafik sıxlığı ilə geo qruplaşdırın (EU, TR, BR, LATAM).


6) Əlillik və istiləşmə

Purge by path/prefix/tag: etiketlər paket təmizlənməsi üçün əlverişlidir (kataloq buraxılışı, promosyon kampaniyası).
Soft purge (grace): məzmunu köhnəlmiş, lakin yeni gələnə qədər veririk.
Isınma (prewarm): buraxılış zamanı/turnirdən əvvəl ssenarilər: populyar yolların sorğusu, sprayt və şəkil variasiyalarının yaradılması.
Kanarya əlilliyi: qismən təmizləyirik, metrik/səhvləri təsdiqləyirik, sonra genişləndiririk.


7) Edge qaydaları və funksiyaları (Workers/Functions)

Cavabların yenidən yazılması: cache başlıqlarının əlavə edilməsi, 'Vary' normallaşdırılması, stripping cookies.
Geo/ASN-routing: redaktorlar, yerli/valyuta ölkə üzrə.
Qorunan media/obyektlər üçün URL imzası (Signed URLs/Headers).
Edge-AB testləri: yüngül, origin yük artımı olmadan (yalnız statik/yarı statik üçün).
Edge-compute: render yüngül widget/personalization, lakin isti ödəniş yolu deyil.


8) Şəkillər və videolar

8. 1 Şəkillər

Avtokonversiya: «Accept» müştəri ilə WebP/AVIF; «Vary: Accept».
edge-də resayzinq: parametrləri 'w/h/fit/quality'; presets (kart, banner, prevyu) hazırlayın.
Sprite və SVG-optimallaşdırma, ön lazy-yükləmə.

8. 2 Video/axın

HLS/DASH qısa seqmentləri (2-4 saniyə), üst-üstə düşən pleylistlər.
Preload ən yaxın seqmentləri və 'stale-if-error'.
Canlı bahislər üçün - TTFB azaldılması üçün regional shield seqmentləri saxlayın.


9) CDN vasitəsilə API

Cashable GET: 'Cache-Control' və düzgün açar (lokal/valyuta/region) əlavə edin.
Conditional GET: 'ETag '/' If-None-Match' baytları və TTFB azaldır.
POST/PUT: cashed deyil; POST cavablarını yalnız aydın qaydalar və idempotent semantika (nadir hallarda haqlı) ilə keşləşdirmək olar.
Kənarda Rate limiting/WAF: bot/anomaliyaları kəsərək quyruqları azaldır.


10) Təhlükəsizlik, giriş və uyğunluq

WAF/bot menecmenti: siqnallar, davranış evristikaları, bonus skanerlərindən qorunma.
Media və şəxsi yükləmələr üçün Signed URLs/Headers.
mTLS к origin и IP allow-list.
GDPR/PII/PCI: həssas məlumatları önizləməyin; Şəxsi cavablarla API - 'no-store'.
Geo-filterlər/bazar tənzimləyicilərinin tələblərinə görə kənarda kilidləmə.


11) Şəbəkə və protokollar

CDN, TLS resumption və OCSP stapling HTTP/2/3 daxil edin.
Brotli (br) mətn formatları üçün, gzip - fallback.
TCP/QUIC-tuning (provayder) → xüsusilə mobil şəbəkədə daha az itki təsiri.


12) CDN üçün müşahidə və SLO

Metriklər (edge və shield):
  • Hit Ratio (overall və prefikslər), Origin Offload.
  • TTFB regionlar üzrə P50/P95/P99/ASN.
  • Status kodlarına görə Throughput/Errors (edge/origin).
  • Purge latency (əlilliyin çatdırılma vaxtı).
  • Image transform latency (kənarda resayzinq istifadə edirsinizsə).
SLO nümunələri:
  • Oyun kataloqu: TTFB P95 ≤ 150 ms, Offload ≥ 85%.
  • Media (görüntülər): Hit Ratio ≥ 90%, transformasiya səhvləri <0. 1%.
  • API GET «kataloqlar»: TTFB P95 ≤ 200 ms, Revalidation Hit ≥ 60%.

13) FinOps: cache dəyəri

Offload = origin ilə daha az egress → birbaşa $ -vygods.
Tiered + shield «fırtına» və MISS yük kəsmək.
Görüntü optimallaşdırılması (AVIF/WebP/resize) ən çox trafik qənaət verir.
Cavabın çəkisinin P95 və «bahalı MISS» (bayt × sayı × region) nəzarət edin.


14) Konfiqirlər və qaydalar (fraqmentlər)

14. 1 origin başlıqları (Nginx)

nginx статика с версионированием location ~ \.(css    js    woff2)$ {
add_header Cache-Control "public, max-age=31536000, immutable";
}

полустатика каталога location /catalog/ {
add_header Cache-Control "public, max-age=300, stale-while-revalidate=600, stale-if-error=600";
add_header Vary "Accept, Accept-Language";
}

14. 2 edge açarının normallaşdırılması (psevdo)

js addRule((req) => {
// очищаем шум req.cookies.clearExcept(['ab', 'locale']);
// ключ = method+path+критичные query key = `${req.method}:${req.path}?lang=${q.lang}&currency=${q.cur}`;
req.setCacheKey(key);
req.setVary(['Accept', 'Accept-Encoding', 'Accept-Language']);
});

14. 3 Signed URL (ideya)


/media/{path}?exp=1735707600&sig=HMAC_SHA256(secret, path    exp    ip)
На edge: проверка exp и подписи, опционально привязка к IP/ASN.

15) Buraxılış və əməliyyat prosesləri

Release hooks: deploi sonra tag/prefiks avtomatik purge.
Prewarm siyahısı: trafikdə/dönüşümdə ən yaxşı yolları əvvəlcədən qızdırın.
Kataloq TTL-matris: məhsul/marketinq ilə razılaşdırılır.
Hadisələr: MISS/TTFB artdıqda - stale-if-error-u işə salırıq, origin sabitləşməsinə qədər edge-də bahalı transformasiyaları «çıxarırıq».


16) Giriş çek siyahısı

1. Məzmun xəritəsi (statik/yarı statik/API) və TTL matrisi.
2. Doğru 'Cache-Control', 'ETag/Last-Modified', 'Vary'.
3. «Səs-küy» olmadan cache açarı, cookies stripping, whitelists.
4. Tiered caching + origin shield regionlar üzrə.
5. Purge tagged/prefiks, yumşaq purge, prewarm prosedurları.
6. Edge funksiyaları: normallaşma, geo-məntiq, Signed URLs.
7. Görüntü optimallaşdırılması (WebP/AVIF/resize), video üçün HLS seqmentləri.
8. WAF/bot filtrləri, geo-məhdudiyyətlər, mTLS origin.
9. SLO dashboard: TTFB, Hit Ratio, Offload, transformasiya səhvləri.
10. FinOps hesabatları: $/GB, bahalı MISS, egress üzrə lider regionlar.


17) Anti-nümunələr

'no-cache' hər yerdə «hər ehtimala qarşı».
Cache açarı bütün query/başlıqları daxildir → sıfır Hit Ratio.
Statika üçün cookies-asılı cavablar (bütün cache qırır).
Hər buraxılışda bütün CDN-ni təmizləyin.
pik zamanı edge uzun sinxron transformasiya.
Yox 'stale-while-revalidate '/' stale-if-error' - kəskin UX deqradasiyası.
Şəxsi məlumatların/cavabların «no-store» olmadan keşləşdirilməsi.


18) iGaming/fintech konteksti: praktik qeydlər

Turnirlər/tədbirlər: Liderbordlarda qısa TTL (2-10 saniyə) + SWR; oyun kartları və banner prewarm.
Geo-lisenziyalaşdırma: edge-bloklama/ölkə üzrə redaktorlar, cache açarında valyuta/lokal.
Promo və kuponlar: bannerləri/şərtləri cache, lakin şəxsi limitləri deyil.
Məsul oyunlar: siyasət/limitlər səhifələri - SWR ilə yarımstatik; şəxsi məlumatlar - yalnız 'no-store'.
PSP/KYC vebhuk: CDN vasitəsilə deyil, və ya cache olmadan edge-pass-through və sərt vaxt.


Yekun

Güclü CDN strategiyası düzgün başlıqlar və cache açarı, MISS azaldılması üçün tiered/shield, normallaşdırma və qorunma üçün edge funksiyaları, sürətli buraxılışlar üçün əlillik/istiləşmə və SLO və FinOps ilə müşahidə olunur. Bu prinsiplərə riayət etməklə, zirvələrə tab gətirəcək və TTFB-ni istifadəçilər və tərəfdaşlar üçün proqnozlaşdırıla bilən bir sürətli və qənaətli perimetr əldə edəcəksiniz.

Contact

Bizimlə əlaqə

Hər hansı sualınız və ya dəstək ehtiyacınız varsa — bizimlə əlaqə saxlayın.Həmişə köməyə hazırıq!

İnteqrasiyaya başla

Email — məcburidir. Telegram və ya WhatsApp — istəyə bağlıdır.

Adınız istəyə bağlı
Email istəyə bağlı
Mövzu istəyə bağlı
Mesaj istəyə bağlı
Telegram istəyə bağlı
@
Əgər Telegram daxil etsəniz — Email ilə yanaşı orada da cavab verəcəyik.
WhatsApp istəyə bağlı
Format: ölkə kodu + nömrə (məsələn, +994XXXXXXXXX).

Düyməyə basmaqla məlumatların işlənməsinə razılıq vermiş olursunuz.