मेरे पास एक बहुत ही विशिष्ट कैश स्थिति है। हम कैशिंग के लिए कई समाधानों का उपयोग करते हैं और मुझे आश्चर्य है कि उपयोगकर्ता कार्रवाई पर कैश को अमान्य करने का सबसे अच्छा समाधान क्या है।मैं कैश को सही तरीके से कैसे अमान्य कर सकता हूं?
कैश की तरह है तो
पहले परत: CDN लॉग आउट हो चुके उपयोगकर्ताओं
के लिए HTML के रूप में पूरे पृष्ठ का कैशदूसरा परत: लॉग आउट हो चुके उपयोगकर्ताओं के लिए memcached में पूरे पृष्ठ का कैश मेरे पास दूसरी परत है क्योंकि किनारों का जवाब देना है, कभी-कभी सभी किनारों को कैश नहीं किया जाता है, इसलिए मैं कैश से किनारे को "जवाब" देना चाहता हूं।
तीसरी परत: लॉग-इन उपयोगकर्ताओं के लिए एचटीएमएल आंशिक और डेटाबेस डेटा कैश करें।
मेरे समस्या यह है कि मेरी अमान्यकरण प्रक्रिया बहुत ज्यादा तीसरी परत पर आधारित है अभी है, और मैं दूसरे और पहली परत काफी अच्छी तरह से जवाब नहीं देते।
मेरा प्रश्न है: कैश कुंजी से पूरे यूआरएल पर कैश को अमान्य करने का सबसे अच्छा तरीका क्या है जिसमें यूआरएल के साथ बिल्कुल कोई युग्मन नहीं है? उदाहरण के लिए, यदि मेरे पास यात्रा योजना है, तो यात्रा योजना के अंदर टिप्पणियां हैं, जब कोई उपयोगकर्ता नई टिप्पणी के साथ टिप्पणी करता है तो मैं पूर्ण पृष्ठ यात्रा योजना URL को अमान्य करना चाहता हूं।
टिप्पणी मॉडल में कोई यूआरएल नहीं है, और "पैरेंट" में यूआरएल भी नहीं है, वही टिप्पणी शहर के पेज में भी दिखाई देगी, इसलिए यह पूरी तरह से एक पुन: प्रयोज्य वस्तु और आंशिक है।
यह वास्तव में एक बहुत अच्छा समाधान है और कैशिंग के बारे में सोचने के तरीके को बदल देता है। अगर इस धागे को शुरू करने वाले लड़के ने अभी तक इन पदों को नहीं पढ़ा है, तो उसे चाहिए। ऐसा लगता है कि उसे क्या चाहिए (अगर किसी चीज में बदलाव हो तो पूरे पृष्ठ को अमान्य करें)। –