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

कैसे Heroku पर Node.js के साथ वेब और वर्कर डायनोस संवाद करने के लिए?

जैसा कि पृष्ठभूमि नौकरियों और कतार पर उच्च-स्तरीय लेख से पता चलता है, आपके वेब डायनो को एक मध्यवर्ती तंत्र (अक्सर एक कतार) के माध्यम से आपके कार्यकर्ता डायनो के साथ संवाद करने की आवश्यकता होगी।

ऐसा लगता है कि आप जो करने की उम्मीद कर रहे हैं उसे पूरा करने के लिए इस सामान्य दृष्टिकोण का पालन करें:

  • वेब अनुरोध वेब डायनो द्वारा प्राप्त किया जाता है
  • वेब डायनो कतार में नौकरी जोड़ता है
  • कार्यकर्ता डायनो कतार से बाहर नौकरी प्राप्त करता है
  • कार्यकर्ता डायनो एक साझा घटक के लिए वृद्धिशील प्रगति लिखते हुए कार्य निष्पादित करता है
  • ब्राउज़र-साइड पोलिंग वेब डायनो से नौकरी की स्थिति का अनुरोध करता है
    • वेब डायनो क्वेरीज़ ने बैकग्राउंड जॉब की प्रगति के लिए घटक साझा किया और राज्य को ब्राउज़र पर वापस भेज दिया
  • कार्यकर्ता डायनो कार्य का निष्पादन पूरा करता है और इसे साझा घटक में पूर्ण के रूप में चिह्नित करता है
  • ब्राउज़र-साइड पोलिंग वेब डायनो से नौकरी की स्थिति का अनुरोध करता है
    • वेब डायनो क्वेरीज़ ने बैकग्राउंड जॉब की प्रगति के लिए घटक साझा किया और पूरी स्थिति को ब्राउज़र पर वापस भेज दिया

जहाँ तक वास्तविक कार्यान्वयन की बात है, मैं Node.js में सर्वश्रेष्ठ पुस्तकालयों से बहुत परिचित नहीं हूँ, लेकिन इस प्रक्रिया को एक साथ जोड़ने वाले घटक हरोकू पर ऐड-ऑन के रूप में उपलब्ध हैं।

कतार:AMQP एक अच्छी तरह से समर्थित क्यू प्रोटोकॉल है और CloudAMQP ऐड-ऑन आपके वेब और वर्कर डायनोस के बीच संदेश कतार के रूप में काम कर सकता है।

साझा स्थिति:आप किसी पोस्टग्रेज़ ऐड-ऑन का उपयोग संसाधित होने वाली नौकरी की स्थिति या मेमकेचे या रेडिस जैसे कुछ और प्रदर्शन करने वाले को साझा करने के लिए कर सकते हैं।

तो, संक्षेप में, आपको हरोकू पर डायनोस के बीच संवाद करने के लिए एक मध्यवर्ती ऐड-ऑन घटक का उपयोग करना चाहिए। हालांकि इस दृष्टिकोण में थोड़ी अधिक इंजीनियरिंग शामिल है, परिणाम एक उचित रूप से विघटित और स्केलेबल आर्किटेक्चर है।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. समय सीमा के साथ मोंगोडब चौराहा

  2. Redis को एक ईवेंट सांख्यिकी स्टोर के रूप में उपयोग करना चाहते हैं

  3. रेडिस - स्मृति उपयोग की निगरानी

  4. नोडज, रेडिस। जाँच करें कि क्या कुंजियाँ मौजूद हैं और यदि नहीं तो नया बनाएँ

  5. PHP और नोड के बीच सत्र साझा करें