मेरे पास एक एस 3 बाल्टी है जिस पर क्लाउडफ्रंट सीडीएन है।एस 3/क्लाउडफ्रंट, हेडर के साथ सभी फाइलें "कैश-कंट्रोल: अधिकतम आयु = 365000000, अपरिवर्तनीय"
यह एस 3 बाल्टी "अपरिवर्तनीय" है, जिसका अर्थ है कि एक बार जब मैं वहां एक फ़ाइल अपलोड करता हूं, तो मैं इसे कभी भी हटा या अपडेट नहीं करता हूं। यह तब सुरक्षित है कि सभी क्लाइंट S3/CloudFront से आने वाली फ़ाइलों को बहुत आक्रामक रूप से कैश करते हैं।
वर्तमान में, एटैग बहुत अच्छा काम कर रहे हैं, और ग्राहकों ने अधिकांश समय 304 प्रतिक्रियाएं मारा। लेकिन 304 प्रतिक्रिया प्राप्त करने में अभी भी एक राउंडट्रिप शामिल है जिसे अधिक आक्रामक कैशिंग से बचा जा सकता है।
तो मैं इस व्यवहार को चाहते हैं:
CloudFront CDN कैश अवैध कभी नहीं मिलना चाहिए, क्योंकि S3 कैश कभी नहीं बदलता। क्लाउडफ्रंट को एक बार से अधिक बार फ़ाइल के लिए S3 से पूछने की आवश्यकता नहीं है। मुझे लगता है कि मैंने क्लाउडफ्रंट वितरण सेटिंग्स का उपयोग करके सफलतापूर्वक कॉन्फ़िगर किया है।
CloudFront (immutable एक नया, 2016 के रूप में आंशिक रूप से समर्थित मूल्य है)
मुझे समझ नहीं आता कि कैसे मैं वांछित परिणाम प्राप्त कर सकते हैं हैडर Cache-Control: max-age=365000000, immutable
साथ सभी फाइलों को कार्य करना चाहिए। क्या मुझे क्लाउडफ्रंट या एस 3 स्तर पर इसे संभालना चाहिए? मैंने प्रत्येक S3 फ़ाइल के लिए उपयुक्त शीर्षलेख को कॉन्फ़िगर करने के बारे में कुछ चीज़ें पढ़ी हैं। क्या कस्टम http शीर्षलेख वाली सभी फ़ाइलों को सेवा देने के लिए कोई वैश्विक सेटिंग नहीं है जिसका उपयोग मैं कर सकता था?
धन्यवाद। मैं संशोधित आदेश के साथ जाऊंगा। यदि क्लाउडफ्रंट कभी-कभी इसका आविष्कार करता है तो यह अच्छा नहीं होता है, लेकिन यह कोई बड़ा सौदा नहीं है या तो –
आप बिल्कुल सही हैं कि * "क्लाउडफ्रंट सीडीएन कैश कभी अवैध नहीं होना चाहिए" * बहुत कठोर है। वास्तव में, यह सिर्फ एक उचित उम्मीद नहीं है। एक मोनोलिथिक कैश नहीं है - प्रत्येक किनारे पर एक होता है, और प्रत्येक किनारे किसी ऑब्जेक्ट के लिए अनुरोध को संभालने वाला होता है जो इसे प्रारंभ में मूल रूप से प्राप्त करता है। वस्तुओं को लगातार पहुंच ("लोकप्रियता") की कमी के लिए किसी दिए गए किनारे से भी निकाल दिया जा सकता है। यह एक कैश है ... परिभाषा के अनुसार अस्थिर लेकिन समग्र रूप से बहुत ही संगत। यह भी देखें [क्लाउडफ़्रंट केवल घंटों के भीतर कैश से वस्तुओं को बेदखल क्यों कर रहा है?] (Http://stackoverflow.com/a/32878535/1695906) –