Tehnologiýalar we infrastruktura → CDN torlary we mazmuny kesmek
CDN torlary we mazmuny kesmek
1) Näme üçin CDN we kesh
CDN (Content Delivery Network) RTT we TTFB gysgaldýar, origini düşürýär we P95/P99 guýruklaryny durnuklaşdyrýar. iGaming/fintech üçin:- Katalog, asset, promo, media üçin çalt ilkinji baýt.
- Iň ýokary durnuklylyk (ýaryşlar/wakalar) origin-kuwwatynyň partlaýjy ösüşi bolmazdan.
- Egress tygşytlamak we öňünden aýdyp boljak çykdajy.
- Geo-gözegçilik (düzgünleşdiriji, mazmuny ygtyýarlandyrmak).
2) Keshiň esasy strategiýalary
2. 1 Kesip alyp boljak jogaplar
Statika: JS/CSS/şriftler/nyşanlar - adynda uzyn TTL (30-365 gün) + file-hash.
Ýarym statistika: oýun kataloglary, bannerler, konfigalar - TTL minutdan sagada çenli + 'stale-while-revalidate'.
API GET/HEAD: gollanmalar, bahalar, liderbordlar - dogry açary bolan gysga TTL (5-120 sek).
2. 2 Sözbaşylar
`Cache-Control: public, max-age=600, stale-while-revalidate=300, stale-if-error=600`
Şertli soraglar üçin 'ETag '/' Last-Modified' (revalidation).
'Surrogate-Control '/' CDN-Cache-Control' (eger üpjün ediji goldaýan bolsa).
Şahsy maglumatlar üçin: 'Cache-Control: no-store' (diňe 'no-cache' däl).
2. 3 Keşiň açary (cache key)
Esasy: usul + URL-ýol + jogaba täsir edýän query-parametrler.
Goşundylar: 'Accept-Encoding' (gzip/br), 'Accept' (json/webp/avif), lokal ('Accept-Language'), sebit/walýuta, eger mazmuna täsir etse.
Tötänleýin sözbaşylaryň (cookies, trace ids) açaryna girmezlik.
3) Wary we Cookie dolandyryşy
'Vary: Accept-Encoding, Accept, Accept-Language' - iň az zerur toplum.
Kesilen ýollar üçin CDN-de kukileri ýaýratmak: whitelisted-den başga hemme zady aýyrýarys (mysal üçin AB baýdaklary).
Session identifikatorlaryny kesilen mazmunyň daşyndaky alt domenlere/ýollara geçirmek.
4) TTL patternleri we täzelik
Immutable statika: 'Cache-Control: public, max-age = 31536000, immutable' + wersiýasy faýlyň adynda.
SWRO/SIE: 'stale-while-revalidate' we 'stale-if-error' - origin problemalarynda UX-durnuklylyk.
Partitioned TTL: oýunlaryň kök sanawy - 30-60 sek; oýun kartoçkasy - 5-10 minut; bannerler - 30 minut.
API garyşyk: esasy maglumat kitaplary - 5-30 min; walýutalar/çäkler - 1-5 minut; liderbord ― 2-15 sek.
5) Tiered caching и origin shield
Tiered/Regional caches: edge-den geçen soraglar origin-iň ýerine sebitleýin "shield" -e urulýar.
Peýdalary: origin-de az MISS, "tupanlary" tekizlemek, egress-den arzan.
Galkanlary iň köp traffik dykyzlygy (EU, TR, BR, LATAM) bilen geo toparlanyň.
6) Maýyplyk we gyzdyrma
Purge by path/prefix/tag: bellikler paket arassalamak üçin amatlydyr (katalogyň çykmagy, mahabat kampaniýasy).
Soft purge (grace): mazmuny köne diýip belleýäris, ýöne täzesi gelýänçä berýäris.
Gyzdyrmak (prewarm): goýberilende/ýaryşdan öň ssenariýalar: meşhur ýollar bilen söhbetdeşlik, spraýtlary döretmek we suratlaryň üýtgemegi.
Kanar maýyplygy: bölekleýin arassalaýarys, metrikleri/ýalňyşlyklary tassyklaýarys, soň giňeldýäris.
7) Edge düzgünleri we funksiýalary (Workers/Functions)
Jogaplary täzeden ýazmak: Keshiň sözbaşylaryny goşmak, "Wary" -ni kadalaşdyrmak, "cookies" stripping.
Geo/ASN-routing: redaktorlar, ýerli/ýurt boýunça walýuta.
Ygtybarly media/obýektler üçin URL (Signed URLs/Headers) goly.
Edge-AB-synaglary: ýeňil, origin ýüküniň ýokarlanmagy bolmazdan (diňe statik/ýarym statik üçin).
Edge-compute: ýeňil widget/şahsylaşdyrma renderi, ýöne gyzgyn töleg ýoly däl.
8) Suratlar we wideolar
8. 1 Suratlar
Awtokonwersiýa: 'Accept' -de WebP/AVIF; 'Vary: Accept'.
edge-de gaýtadan işlemek: 'w/h/fit/quality' parametrleri; presetleri (kartoçka, banner, prevyu) taýýarlaň.
Spraýtlar we SVG-optimizasiýa, frontda lazy-ýüklemek.
8. 2 Wideo/akym
Gysga segmentli HLS/DASH (2-4 sek), örtülen pleýlisler.
Iň ýakyn segmentleri preload we 'stale-if-error'.
Live-stories üçin - TTFB-ni azaltmak üçin segmentleri sebitleýin bölümde saklaň.
9) CDN arkaly API
Saklanan GET: 'Cache-Control' we dogry açary (ýerli/walýuta/sebit) goşuň.
Conditional GET: 'ETag '/' If-None-Match' baýtlary we TTFB azaldýar.
POST/PUT: kesilmeýär; POST jogaplaryny diňe aç-açan düzgünler we idempotent semantika (seýrek dogry) bilen kesip bolýar.
Gyrada Rate limiting/WAF: botlaryň kesilmegi/anomaliýalar sebäpli guýruklaryny peseldýär.
10) Howpsuzlyk, elýeterlilik we gabat gelmek
WAF/bot dolandyryşy: signaturalar, özüni alyp baryş ewristikalary, bonus skanerlerinden goramak.
Media we şahsy ýüklemeler üçin Signed URLs/Headers.
mTLS к origin и IP allow-list.
GDPR/PII/PCI: duýgur maglumatlary kesmezlik; Şahsy jogaplar bilen API - 'no-store'.
Bazar düzgünleşdirijileriniň talaplary boýunça gyrada geo-süzgüçler/blokirlemeler.
11) Tor we teswirnamalar
CDN, TLS resumption we OCSP stapling HTTP/2/3 açyň.
Brotli (br) tekst formatlary üçin, gzip - fallback.
TCP/QUIC-sazlamak (üpjün edijide) → ýitgileriň, esasanam ykjam torda az täsiri.
12) CDN üçin synlamak we SLO
Metrikler (edge & shield):- Hit Ratio (overall we prefiksler boýunça), Origin Offload.
- TTFB P50/P95/P99 sebitler boýunça/ASN.
- Status kodlary boýunça Throughput/Errors (edge/origin).
- Purge latency (maýyplygy eltmegiň wagty).
- Image transform latency (gyrada gaýtadan ulanýan bolsaňyz).
- Oýunlaryň katalogy: TTFB P95 ≤ 150 ms, Offload ≥ 85%.
- Media (suratlar): Hit Ratio ≥ 90%, üýtgeşiklik ýalňyşlyklary <0. 1%.
- API GET "gollanmalar": TTFB P95 ≤ 200 ms, Revalidation Hit ≥ 60%.
13) FinOps: nagt pul
Offload = origin → göni $ -wygods bilen az egress.
Tiered + shield "tupanlary" we MISS ýüküni kesýär.
Şekilleri optimizirlemek (AVIF/WebP/resize) traffigi has köp tygşytlaýar.
Jogap agramynyň we "gymmat MISS" P95 gözegçilik ediň (baýtlar × sebit × sany).
14) Konfigirler we düzgünler (bölekler)
14. 1 Origin (Nginx) sözbaşylary
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çarynyň kadalaşmagy (psevdo)
js addRule((req) => {
// очищаем шум req.cookies.clearExcept(['ab', 'locale']);
// ключ = method+path+критичные query key = `${req.method}:${req.path}?lang=${q.lang}¤cy=${q.cur}`;
req.setCacheKey(key);
req.setVary(['Accept', 'Accept-Encoding', 'Accept-Language']);
});
14. 3 Signed URL (ideýa)
/media/{path}?exp=1735707600&sig=HMAC_SHA256(secret, path exp ip)
На edge: проверка exp и подписи, опционально привязка к IP/ASN.
15) Goýbermek we peýdalanmak prosesleri
Release hooks: deploiden soň bellikler/prefiksler boýunça awtomatiki purge.
Prewarm-sanawy: traffigiň/öwrümiň iň ýokary ýollary - öňünden gyzdyryň.
TTL-matrisa katalogy: önüm/marketing bilen ylalaşyldy.
Hadysalar: MISS/TTFB ýokarlananda - stale-if-error goşýarys, origin durnuklaşýança edge-de gymmat üýtgeşmeleri "aýyrýarys".
16) Girizmegiň çek-sanawy
1. Mazmun kartasy (statika/ýarym statika/API) we TTL-matrisa.
2. Dogry 'Cache-Control', 'ETag/Last-Modified', 'Vary'.
3. "Ses", cookie-stripping, whitelists.
4. Sebitler boýunça tiered caching + origin shield.
5. Taglar/prefiksler boýunça purge, soft purge, prewarm-proseduralary.
6. Edge-funksiýalar: kadalaşma, geo-logika, Signed URLs.
7. Şekilleri optimizirlemek (WebP/AVIF/resize), wideo üçin HLS segmentleri.
8. WAF/bot-süzgüçler, geo-çäklendirmeler, mTLS k origin.
9. SLO-daşbordlar: TTFB, Hit Ratio, Offload, transformasiýa ýalňyşlyklary.
10. FinOps-hasabatlary: $/GB, gymmat MISS, egress boýunça öňdebaryjy sebitler.
17) Anti-patternler
'no-cache' hemme ýerde "mümkin boldugyça".
Kesh açary ähli query/başlyklary öz içine alýar → nol Hit Ratio.
Statika üçin çerezlere bagly jogaplar (kesişiň doly bozulmagy).
Her çykarylanda CDN arassalaň.
Edge-de uzyn sinhron üýtgeşmeler.
'stale-while-revalidate '/' stale-if-error' ýoklugy - UX-iň ýiti pese gaçmagy.
Şahsy maglumatlary/jogaplary 'no-store' -syz kesmek.
18) iGaming/fintech mazmuny: amaly bellikler
Ýaryşlar/çäreler: Liderbordlara gysga TTL (2-10 sek) + SWR; oýun kartoçkalarynyň we bannerleriň prewarm.
Geo-lisenziýalaşdyrmak: edge-blokirlemek/ýurt boýunça redaktorlar, pul birligi/kesh açaryndaky lokal.
Mahabat we kuponlar: bannerleri/şertleri kesip alýarys, ýöne şahsy çäkleri däl.
Jogapkär oýunlar: syýasatyň/çäkleriň sahypalary - SWR-den ýarym statistika; şahsy maglumatlar - diňe 'no-store'.
PSP/KYC webhukki: CDN ýa-da edge-pass-through arkaly däl.
Jemi
Güýçli CDN strategiýasy, MISS-i azaltmak, kadalaşmak we goramak üçin edge funksiýalary, çalt goýbermek üçin maýyplyk/gyzdyrmak we SLO we FinOps bilen gözegçilik etmek üçin dogry sözbaşy we keş açarydyr. Bu ýörelgelere eýerip, iň ýokary derejelere çydap, TTFB-ni ulanyjylar we hyzmatdaşlar üçin öňünden aýdyp boljak çalt we tygşytly perimetri alarsyňyz.