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

रेडिस क्लस्टर से कनेक्शन विफल

ठीक है, मुझे लगता है कि यहाँ एक भ्रम है।

एक रेडिस क्लस्टर परिनियोजन सेंटिनल द्वारा संरक्षित कई मानक रेडिस उदाहरणों के समान नहीं है। दो बहुत अलग चीजें।

जीसीई का क्लिक-टू-डिप्लॉय विकल्प कई मानक रेडिस इंस्टेंस को प्रहरी द्वारा संरक्षित करता है, न कि रेडिस क्लस्टर द्वारा।

ioredis दोनों तरह की तैनाती को संभाल सकता है, लेकिन आपको संबंधित API का उपयोग करना होगा। यहां, आप रेडिस क्लस्टर एपीआई का उपयोग करने का प्रयास कर रहे थे, जिसके परिणामस्वरूप यह त्रुटि हुई (क्लस्टर संबंधित कमांड मानक रेडिस उदाहरणों के लिए सक्रिय नहीं हैं)।

Ioredis दस्तावेज़ीकरण के अनुसार, आपको निम्न से कनेक्ट होना चाहिए:

var redis = new Redis({
    sentinels: [{ host: hostMaster, port: 26379 },
                { host: hostSlab1, port: 26379 },
                { host: hostSlab2, port: 26379 } ],
    name: 'mymaster'
});

बेशक, प्रहरी बंदरगाहों और मास्टर के नाम की जाँच करें। मास्टर के विफल होने पर ioredis स्वचालित रूप से एक दास उदाहरण में स्विच का प्रबंधन करेगा, और प्रहरी यह सुनिश्चित करेगा कि दास को पहले ही मास्टर के रूप में पदोन्नत किया जाए।

ध्यान दें कि चूंकि आप पब/उप का उपयोग करते हैं, इसलिए आपको कई रेडिस कनेक्शन की आवश्यकता होगी।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. फ्लशडीबी रेडिस में सभी चाबियाँ साफ़ नहीं करता है?

  2. रेडिस परिनियोजन कॉन्फ़िगरेशन - मास्टर दास प्रतिकृति

  3. अत्यधिक उच्च मात्रा में डेटा के लिए कौन सा NoSQL डेटाबेस

  4. मैं कैसे जांचूं कि फ्लास्क शुरू करने से पहले रेडिस चल रहा है या नहीं (और अगर यह नहीं है तो इसे शुरू करें)?

  5. नोडजेएस में पब/उप कार्यान्वयन