रेडिस को पता नहीं है कि डीबी में डेटा अपडेट किया गया है या नहीं।
आम तौर पर, हम डेटा को कैश करने के लिए रेडिस का उपयोग इस प्रकार करते हैं:
- क्लाइंट जांचता है कि क्या डेटा, उदा. की-वैल्यू पेयर, रेडिस में मौजूद है।
- यदि कुंजी मौजूद है, तो क्लाइंट को Redis से संबंधित मान प्राप्त होता है।
- अन्यथा, यह डीबी से डेटा प्राप्त करता है, और इसे रेडिस पर सेट करता है। साथ ही क्लाइंट एक समय सीमा समाप्ति सेट करता है, जैसे
5
मिनट, रेडिस में की-वैल्यू पेयर के लिए। - फिर उसी कुंजी के बाद के किसी भी अनुरोध को Redis द्वारा परोसा जाएगा। हालांकि रेडिस में डेटा पुराना हो सकता है।
- हालांकि,
5
. के बाद मिनट, यह कुंजी स्वचालित रूप से Redis से हटा दी जाएगी। - चरण 1 पर जाएं।
इसलिए अपने डेटा को रेडिस में अपडेट-टू-डेट रखने के लिए, आप एक छोटा समाप्ति समय निर्धारित कर सकते हैं। हालाँकि, आपके DB को बहुत सारे अनुरोध करने हैं।
यदि आप डीबी के अनुरोधों को काफी हद तक कम करना चाहते हैं, तो आप एक बड़ा समाप्ति समय निर्धारित कर सकते हैं। ताकि, ज्यादातर समय, Redis संभावित रुके हुए डेटा के साथ अनुरोधों को पूरा कर सके।
आपको प्रदर्शन और रुके हुए डेटा के बीच ट्रेड-ऑफ़ के बारे में ध्यान से विचार करना चाहिए।