Redis
 sql >> डेटाबेस >  >> NoSQL >> Redis

क्या मुझे फाइलों/मॉड्यूल के बीच रेडिस कनेक्शन साझा करना चाहिए?

जब मैं इस तरह के किसी प्रश्न का सामना करता हूं तो मैं आमतौर पर तीन बुनियादी प्रश्नों के बारे में सोचता हूं।

  1. कौन सा अधिक पठनीय है?
  2. जो बेहतर कोड पुन:उपयोग की अनुमति देता है?
  3. कौन सा अधिक कुशल है?

इस क्रम में जरूरी नहीं है क्योंकि यह परिदृश्य पर निर्भर करता है, लेकिन मेरा मानना ​​​​है कि इस मामले में ये तीनों प्रश्न विकल्प बी के पक्ष में हैं। यदि आपको कभी भी createClient के लिए विकल्पों को संशोधित करने की आवश्यकता होती है, तो आपको उन्हें प्रत्येक फ़ाइल में संपादित करने की आवश्यकता होगी जो इसका उपयोग करता है। कौन सा विकल्प ए में हर फाइल है जो रेडिस का उपयोग करती है, और विकल्प बी सिर्फ redis.js है। इसके अलावा, यदि कोई नया या अलग उत्पाद सामने आता है और आप रेडिस को बदलना चाहते हैं तो रेडिस.जेएस को एक अलग पैकेज के लिए एक रैपर बनाना संभव होगा या यहां तक ​​कि एक नया रेडिस क्लाइंट भी रूपांतरण समय को काफी कम कर सकता है।

ग्लोबल्स आम तौर पर एक बुरी चीज है, लेकिन इस उदाहरण में redis.js को परिवर्तनशील स्थिति का भंडारण नहीं करना चाहिए, इसलिए इस संदर्भ में ग्लोबल/सिंगलटन होने में कोई समस्या नहीं है।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. स्वचालित पुनर्प्रयास

  2. JSON स्ट्रिंग के अक्रमांकन के दौरान नाम स्थान परिवर्तन को संभालना

  3. मौजूदा रिलेशनल डेटाबेस को की-वैल्यू स्टोर में कैसे बदलें?

  4. रेडिस क्ली का उपयोग करके कमांड के बैचों को निष्पादित करना

  5. ImportError:रेडिस नाम का कोई मॉड्यूल नहीं