तुम सिर्फ सीधे क्वेरी परिणाम कैश करने के लिए जा रहे हैं क्वेरी स्ट्रिंग के आधार पर, MySQL की क्वेरी कैश पहले से ही आपके लिए यह करती है। पहिया को पुन: पेश न करें। एक संभावित अंतर है MySQL का क्वेरी कैश आक्रामक रूप से अमान्य है ताकि पुराना (पुराना, गलत) डेटा कभी वापस नहीं किया जा सके; आप अमान्यता को कैसे संभालेंगे, इस पर निर्भर करते हुए, आपकी रणनीति डेटाबेस लोड को और कम कर सकती है, लेकिन नियमित आधार पर पुराने डेटा की पुरानी सेवा की लागत पर।
इसके अतिरिक्त, अपडेट होने पर आप वास्तव में अपने विभिन्न कैश कुंजी का चयन करने में सक्षम नहीं होंगे (आप कैसे जानेंगे कि एक सम्मिलित/अद्यतन चलने पर कौन सी क्वेरी स्ट्रिंग की अवधि समाप्त होनी चाहिए?); नतीजतन आपको केवल एक संक्षिप्त समाप्ति समय (शायद सेकंड में) सेट करना होगा, ताकि आप उस समय की मात्रा को कम कर सकें जब आप पुराने डेटा की सेवा कर रहे हों। इसका मतलब शायद कम कैश हिट दर होगा। अंत में, आपके द्वारा वर्णित कैशिंग रणनीति लागू करने के लिए सरल है, लेकिन यह बहुत प्रभावी नहीं है।
memecached FAQ के "Generic Design Approaches" section को पढ़ना सुनिश्चित करें। अपडेट होने पर एक अच्छी कैशिंग रणनीति तुरंत कैश किए गए डेटा को हटा देती है/प्रतिस्थापित करती है - इससे आपको घंटे/दिन/सप्ताह के लिए डेटा कैश करने की अनुमति मिलती है, और साथ ही उपयोगकर्ताओं को डेट डेटा से पहले कभी भी सेवा नहीं मिलती है।
स्रोत
2010-04-08 14:47:46
क्या आपको कोई मदद मिलती है जो आपको मदद करती है? –