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

मैं किसी भी एमक्यू प्लेटफॉर्म में इस एकल समवर्ती वितरित कतार को कैसे कार्यान्वित कर सकता हूं?

आप एक अतिरिक्त "प्रेषण" कतार के साथ रेडिस सूचियों का उपयोग करके इसे प्राप्त कर सकते हैं जो सभी कार्यकर्ता BRPOP पर उनके काम के लिए। प्रेषण कतार में प्रत्येक कार्य को मूल कतार आईडी के साथ टैग किया गया है, और जब कार्यकर्ता ने कार्य पूरा कर लिया है तो वह इस मूल कतार में जाता है और RPOPLPUSH करता है किसी अन्य कार्यकर्ता के लिए अगली नौकरी उपलब्ध कराने के लिए प्रेषण कतार में। इसलिए प्रेषण कतार में अधिकतम num_queues . होंगे तत्व।

स्रोत कतार खाली होने पर आपको एक चीज को संभालना होगा प्रेषण कतार की प्रारंभिक आबादी। यह प्रकाशक द्वारा शुरू में सेट की गई प्रत्येक कतार के लिए "खाली" ध्वज के खिलाफ किया गया चेक हो सकता है, और कार्यकर्ता द्वारा भी सेट किया जा सकता है जब प्रेषण के लिए मूल कतार में कुछ भी नहीं बचा है। यदि यह ध्वज सेट है, तो प्रकाशक केवल LPUSH . कर सकता है पहली नौकरी सीधे प्रेषण कतार पर।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. रेडिस बैकग्राउंड जॉब के बाद मैं फ्लास्क रेंडर_टेम्प्लेट कैसे लौटा सकता हूं?

  2. स्प्रिंग-रेडिस दूरस्थ होस्ट से कनेक्ट नहीं हो सकता

  3. क्या आप Amazon के बाहर Amazon ElastiСache Redis से जुड़ सकते हैं?

  4. स्कैला से उपयोग के लिए रेडिस क्लाइंट लाइब्रेरी की सिफारिशें

  5. रेडिस INCRBY सीमा के साथ