Redis में, हैश, लिस्ट, सेट और सॉर्टेड सेट जैसे बड़े नॉन-स्ट्रिंग ऑब्जेक्ट्स को हटाने से आपका सर्वर महत्वपूर्ण समय के लिए ब्लॉक हो सकता है, जिससे क्लाइंट-साइड टाइमआउट जैसी समस्याएं हो सकती हैं। यह Redis के काम करने के दो पहलुओं के कारण है:
Redis सिंगल-थ्रेडेड है। इसका मतलब है कि यह एक समय में केवल एक कमांड प्रोसेस कर सकता है चाहे कितने भी क्लाइंट्स कनेक्टेड हों। यदि कोई कमांड चलने में लंबा समय लेता है, तो हर दूसरी कमांड को इंतजार करना होगा।
हैश, लिस्ट, सेट और सॉर्टेड सेट पर
DELएकO(n)ऑपरेशन है। इसका मतलब है कि 1 मिलियन एलिमेंट्स वाला ऑब्जेक्ट उसी प्रकार के 100 एलिमेंट्स वाले समान ऑब्जेक्ट की तुलना में लगभग 10,000x अधिक समय लेगा।
सौभाग्य से, Redis हमें कुछ टूल्स देता है जिनका उपयोग हम बड़े ऑब्जेक्ट्स को बिना सर्वर को लंबे समय तक ब्लॉक किए हटाने के लिए कर सकते हैं। हमने अपने समाधान यहां संकलित किए हैं:
- बड़े हैश हटाना
- बड़े लिस्ट हटाना
- बड़े सेट हटाना
- बड़े सॉर्टेड सेट हटाना