खेल और संपत्ति के लिए सीडीएन: टीटीएफबी दुनिया भर में गिरावट
1) iGaming के लिए "तेज़" क्या है और हम कहाँ जीतते हैं
गंभीर UX बिन्दु:- लॉबी और मीडिया (गेम आइकन, पूर्वावलोकन, बैनर) - तत्काल रेंडर;
- एक स्लॉट/लाइव टेबल शुरू करना - न्यूनतम पुनर्निर्देशन और अधिभार;
- फीड/लिस्ट (गेम कैटलॉग, नियम, अनुवाद) - सस्ते कैश्ड JSON;
- वीडियो/प्रसारण (ट्रेलर, धाराओं के लिए एचएलएस/डीएएसएच);
- स्थिर फ्रंट एसेट्स (JS/CSS/fonts)।
लक्ष्य (वैश्विक कवरेज के साथ यथार्
ग्लोबल टीटीएफबी: ≤ 150-250 एमएस प्रति स्थिर, ≤ 300-400 एमएस प्रति स्पीकर किनारे पर कैश किया गया;
टाइम-टू-फर्स्ट-स्पिन (TTFS): प्रदाता के पहले अनुरोध के लिए ≤ 800 ms (लॉबी प्रदान करने के बाद);
p95 आइकन डाउनलोड: ≤ 200ms।
2) सीडीएन परत वास्तुकला: प्रदर्शन पाई
1. दुनिया भर में Anycast PoP: निकटतम साइट का ऑटो-चयन, RTT में कमी।
2. टायर्ड कैश + ओरिजिनल शील्ड: PoP - मिस तूफानों को बुझाने के लिए मूल से पहले एक क्षेत्रीय कैश 1-2 ढाल नोड्स।
3. मल्टी-ओरिजिन: एसेट-एसेट या एसेट-स्टैंडबाय (ईयू/यूएस/एपीएसी), हेल्थ चेक और स्मार्ट रूटिंग।
4. एज फ़ंक्शन: उत्पत्ति के लिए आसान तर्क (ए/बी, जियो, हस्ताक्षर, यूआरएल/हेडर सामान्यीकरण)।
5. निजी रीढ़ सीडीएन: दूर के क्षेत्रों में "जंगली" इंटरनेट कोर से गुजरता है।
3) नकद रणनीतियाँ: क्या, कहाँ और कितना
सिद्धांत: जहां संभव हो, अपरिवर्तनीय, गतिशीलता के लिए छोटा टीटीएल, फटने के लिए एसडब्ल्यूआर (बासी-जबकि-पुनरुद्धार), नियतात्मक कुंजी।
टीटीएल मैट्रिक्स (उदाहरण):महत्वपूर्ण: एपीआई-गेट्स के लिए जिन्हें आप कैश करते हैं, ब्राउज़र को स्थिर होने से रोकने के लिए सरोगेट-कंट्रोल (सीडीएन के लिए) और लघु 'कैश-कंट्रोल' (ब्राउज़र के लिए) का उपयोग करें।
4) कैश हेडर और कुंजी: मिस को कम करें
कैश कुंजी = 'योजना + होस्ट + पथ + सामान्यीकृत क्वेरी + विविधताएं'.
क्वेरी मापदंडों के क्रम को सामान्य करें, "कचरा" ('utm', 'fbclid', आदि) को बाहर फेंकें।
हेडर विकल्प: 'स्वीकार करें-एनकोडिंग' (ब्रोटली/Zstd/Gzip), 'स्वीकार करें' (AVIF/WebP/JPEG), 'DPR' (क्लाइंट संकेत), 'स्वीकार करें-भाषा।'
शीर्षक संदर्भ (अपरिवर्तनीय आस्तियों के लिए):
कैश-कंट्रोल: सार्वजनिक, अधिकतम आयु = 31536000, अपरिवर्तनीय
ETag: "sha256- <hash>"
सामग्री-एनकोडिंग: br # और/या zstd/gzip, नीचे देखें
भिन्नता: स्वीकार करें-एनकोडिंग, स्वीकार करें, डीपीआर, सेव-डेटा
कैश-कंट्रोल: सार्वजनिक, अधिकतम आयु = 60, बासी-जबकि-पुनर्नवीनीकरण = 300
सरोगेट-नियंत्रण: अधिकतम आयु = 300, बासी-जबकि-पुनर्नवीनीकरण = 6005) संपीड़न और प्रारूप: कम बाइट्स - टीटीएफबी के नीचे
HTTP/3 + QUIC हैंडशेक विलंबता को कम करता है, पैकेट हानि के लिए प्रतिरोधी है।
टेक्स्ट एसेट्स (JS/CSS/JSON) के लिए ब्रोटली, स्तर 5-7 (CPU बैलेंस/लाभ)।
JSON/NDJSON के लिए Zstd (यदि CDN समर्थित है) कम विलंबता पर उत्कृष्ट संपीड़न है।
छवियों के लिए WebP/AVIF ('स्वीकार करें' द्वारा ऑटो-फिट)।- वीडियो/बड़ीफ़ाइलों के लिए रेंज अनुरोध ताकि सब कुछ खींचा न जा सके।
6) एज के माध्यम से डिलीवरी: प्रीफेच और स्मार्ट लॉबी
लॉबी से प्रीफेच: जैसे ही गेम कार्ड दृश्यमान क्षेत्र में होता है, प्रदाता के आइकन, नियम, छोटे "मैनिवेस्ट" को लोड करते हैं।
प्रारंभिक संकेत (103) और सीडीएन मेजबान के लिए 'प्रीकनेक्ट'।
एज-फंक्शन-वार्म-अप: घटना पर "गेम को शीर्ष पर रखें" - निकटतम PoP बाजारों के प्रोमो में शीर्ष आइकन और कॉन्फ्रेंस को गर्म करें।
अनुकूली पेलोड: 3G/Save-Data में एक मोबाइल पर हल्की सूची (10-20 गेम) भेजें।
7) मूल शील्ड और "मिस तूफान" के खिलाफ बचाव
Deduplicated लाभ को चालू करें: सैकड़ों समानांतर यादों (coalescing) के साथ मूल की एक यात्रा।
बड़ी संख्या में कुंजियों की "एक साथ" समाप्ति के लिए जिटर टीटीएल ( 20%)।
कैनरी रिलीज़: एक वैश्विक विकलांग व्यक्ति को 5-10% बढ़ त यातायात पर नए कैटलॉग/नियम।
शुरुआत से पहले टूर्नामेंट के लिए '404/204' पर नकारात्मक-कैश (बहुत छोटा, 1-5 एस), ताकि "हथौड़ा" मूल न हो।
8) भू-बाधाएं, लाइसेंस और सुरक्षा
ऑफ-लाइसेंस देशों के लिए किनारे पर भू-बाड़लगाना एक त्वरित और तटस्थ प्रतिक्रिया (403) है।
निजी सामग्री (वीआईपी सामग्री, बोनस संसाधन) के लिए हस्ताक्षरित यूआरएल/कुकी।
हॉटलिंक और रेफरर्स के खिलाफ सुरक्षा, एपीआई-गेट के लिए पीओपी पर डब्ल्यूएएफ नियम जो आप कैश करते हैं (वैध JSON योजना, आईपी/एएसएन लिमिट)।
टीएलएस 1। 3, एचएसटीएस, सीडीएन फ्रंट डोमेन पर ओसीएसपी स्टेपलिंग।
9) सत्यापन और विकलांगता
फ़ाइल नामों में सामग्री-हैश: 'ऐप। 
JSON/कैटलॉग/बैनर: इवेंट विकलांगता (CMS/एडमिन पैनल से वेबहुक) + ऑटो-वार्मिंग टॉप-कीज़।
वैश्विक पर्स से बचें; उपसर्ग/टैग द्वारा बिंदु शुद्धिकरण करें।
10) वीडियो और धाराएँ: सीडीएन पर एचएलएस/डीएएसएच
लघु खंड (2-4 एस) + '# EXT-X-PREFETCH '/लो-लेटेंसी HLS समर्थित।
खंडों के लिए पीओपी के बीच टायर्ड कैश; 'कैश-कंट्रोल: सार्वजनिक, अधिकतम आयु = 3600'।
प्रति-क्षेत्र प्लेलिस्ट (बिटरेट विकल्प) और स्थानीय उपशीर्षक; रेंज-फ्रेंडली।
11) खेल प्रदाताओं की विशिष्टताएं
प्रदाता मेटाडेटा (सूची, सीमा, स्थान) - 'SWR' के साथ JSON को कैश किया।
आइकन और प्रोमो मीडिया प्रदाता - अपने सीडीएन डोमेन पर फिर से होस्ट करें (ताकि उनकी धीमी उत्पत्ति से पीड़ित न हों)।
सीडीएन डोमेन पूल (लेकिन डोमेन-शार्डिंग के बिना - यह आवश्यक नहीं है) - नीति को अलग करने के लिए बड़े वीडियो/स्थिर/एपीआई को अलग करें।
12) नियमों का उदाहरण (छद्म, किनारे का कार्य)
js डिफ़ॉल्ट async (req) => {
//req कुंजी को सामान्य करता है। url = normalieQuery (req। url, ['लैंग', 'डीपीआर', 'वी'] ;//कचरा डंप
//जियोफेंसिंग यदि (! isLicensed (req.geo. देश) वापसी जियोब्लॉक ();
//निजी उपसर्गों के लिए हस्ताक्षरित URL यदि (req. पथ।  ('/vip/') के साथ)  (req);
//नीति कैश यदि (req)। पथ। मैच (/ć. (js)    सीएसएस    woff2) $/) और hashash (req। पथ) {
सेटहेडर ('कैश-कंट्रोल', 'सार्वजनिक, अधिकतम आयु = 31536000, अपरिवर्तनीय');
} और अगर (req। पथ। इंफ्रास्ट्रक्चर के साथ ('/गेम् json ')) {
सेटहेडर ('कैश-कंट्रोल', 'सार्वजनिक, अधिकतम आयु = 60, बासी-जबकि-पुनर्नवीनीकरण = 300');
सेटहेडर ('सरोगेट-कंट्रोल', 'अधिकतम आयु = 300, बासी-जबकि-पुनर्नवीनीकरण = 600');
}
//संपीड़न वार्तालाप (['br', 'zstd', 'gzip']);
वापसी CacheCacheCacheOrigin (req);
}13) सीडीएन और एसएलओ अवलोकन
RUM: क्षेत्र/नेटवर्क (मोबाइल बनाम वाई-फाई) द्वारा 'TTFB', 'LCP', 'पहला पेंट' एकत्र करें।
एज मेट्रिक्स: हिट/मिस, शील्ड हिट-रेशियो, उपसर्ग मिस, आउटगोइंग ट्रैफिक वॉल्यूम, '4xx/5xx' कोड।
अलर्ट: हिट-अनुपात ड्रॉप, क्षेत्रीय टीटीएफबी वृद्धि, "मिस स्टॉर्म", '429' स्पाइक/एएसएन बॉट।
निशान: 'एज शील्ड' मूल 'को देखने के लिए' जहां जलता है 'चिह्नित करता है।
14) लागत: कैसे अधिक भुगतान नहीं करना है
कैश भारी और गर्म (प्रतीक/वीडियो/निर्देशिका) - मूल से उत्सर्जन को कम करता है।
कुंजियों की कार्डिनैलिटी कम करें (कचरा प्रश्नों/यूए विविधताओं को हटाएं)।
Tiered कैश और क्षेत्रीय ढाल नोड्स बैकेंड अनुरोधों को सहेजते हैं।
संपीड़न (ब्रोटली/Zstd) यातायात को कम करता है; AVIF/WebP - तस्वीरों के लिए मस्त-छत्ता।
15) उत्पादन तत्परता चेकलिस्ट
- लक्ष्य बाजारों (यूरोपीय संघ, लैटम, MENA, APAC) के कवरेज के साथ Anycast CDN; शामिल HTTP/3।
- सामग्री हैश के साथ अपरिवर्तनीय संपत्ति; 'कैश-कंट्रोल: अधिकतम आयु = 1y, अपरिवर्तनीय'।
- कैटलॉग/JSON - SWR + सरोगेट-कंट्रोल, TTL 30-300 s, CMS से बिंदु विकलांगता।
- टियर्ड कैश + ओरिजिनल शील्ड, कोलेसिंग, टीटीएल-जिटर।
- प्रारूप: AVIF/WebP, Brotli/Zstd, वीडियो के लिए रेंज।
- एज फंक्शन: क्वेरी नॉर्मलाइजेशन, जियो फिल्टर, URL हस्ताक्षरित, A/B।
- पीओपी पर भू-बाधा और डब्ल्यूएएफ; HTTPS केवल (HSTS), TLS 1। 3.
- अवलोकन: RUM TTFB/LCP, हिट-अनुपात, क्षेत्रीय अलर्ट।
- प्रोमो/स्ट्रीम, कैनरी गणना से पहले वार्म-अप प्रक्रियाएं।
- कैश कुंजी प्रलेखन, विकलांगता नीति, और "मिस स्टॉर्म" रनबुक।
सारांश फिर से शुरू करें
दुनिया भर में TTFB को वास्तव में कम करने के लिए, Anycast + tiered cache + मूल ढाल का उपयोग करें, सभी versioned के लिए अपरिवर्तनीय बनाएं, गतिशील सूचियों के लिए SWR का उपयोग करें, बाइट्स (Brotli/Zstd, Astd। फिल्टर और हस्ताक्षर। प्रोमो से पहले शीर्ष गेम को गर्म करें, RUM के माध्यम से TTFB/LCP को मापें और हिट-अनुपात को नियंत्रण में रखें - इस तरह लॉबी तुरंत खुलती है, गेम बिना रुके शुरू होते हैं, और मूल ठंडा और सस्ता रहता है।
