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

रीयल-टाइम एप्लिकेशन नौसिखिया - Node.JS + Redis या RabbitMQ -> क्लाइंट/सर्वर कैसे?

वास्तुकला की दृष्टि से, आपकी दोनों पसंद ओरेकल डेटाबेस सर्वर में डेटा संग्रहीत करने के समान हैं ताकि किसी अन्य एप्लिकेशन को पुनर्प्राप्त किया जा सके।

RabbitMQ और Redis समाधान दोनों के लिए आपके ऐप्स को एक मध्यस्थ सर्वर से कनेक्ट करने की आवश्यकता होती है जो डेटा संचार को संभालता है। रेडिस ओरेकल की तरह सबसे अधिक है, क्योंकि इसका उपयोग केवल नेटवर्क एपीआई के साथ एक सतत डेटाबेस के रूप में किया जा सकता है। लेकिन RabbitMQ थोड़ा अलग है क्योंकि MQ ब्रोकर डेटा को बनाए रखने के लिए वास्तव में जिम्मेदार नहीं है। यदि आप इसे सही तरीके से कॉन्फ़िगर करते हैं और संदेश प्रकाशित करते समय सही विकल्पों का उपयोग करते हैं, तो RabbitMQ वास्तव में आपके लिए डेटा जारी रखेगा लेकिन आप सामान्य संदेश कतारबद्ध प्रक्रिया के हिस्से को छोड़कर डेटा प्राप्त नहीं कर सकते हैं। दूसरे शब्दों में, RabbitMQ संदेशों को संप्रेषित करने के लिए है और केवल नेटवर्क समस्याओं या सिस्टम क्रैश से उबरने के तरीके के रूप में दृढ़ता प्रदान करता है।

मेरा सुझाव है कि आप RabbitMQ और उन सभी प्रोग्रामिंग भाषाओं का उपयोग करें जिनसे आप पहले से परिचित हैं। चूंकि LAMP में M को आमतौर पर MySQL के रूप में व्याख्यायित किया जाता है, इसका मतलब है कि आप या तो MySQL का उपयोग बिल्कुल नहीं करेंगे, या केवल डेटा के दीर्घकालिक भंडारण के लिए इसका उपयोग करेंगे, रीयलटाइम संचार के लिए नहीं।

रैबिटएमक्यू साइट में एएमक्यूपी के साथ ऐप्स बनाने के बारे में बड़ी मात्रा में दस्तावेज हैं। मेरा सुझाव है कि आपके द्वारा RabbitMQ स्थापित करने के बाद, आप rabbitmqctl के डॉक्स को पढ़ लें। और फिर एक vhost बनाएं प्रयोग करने के लिए। इस तरह सब कुछ रीसेट किए बिना अपने प्रयोगों को साफ करना आसान है। मैं केवल विषय एक्सचेंजों का उपयोग करने का भी सुझाव देता हूं क्योंकि आप रूटिंग_की में वाइल्डकार्ड का उपयोग करके प्रत्यक्ष और फैनआउट एक्सचेंजों के व्यवहार का अनुकरण कर सकते हैं। याद रखें, आप केवल एक्सचेंजों को संदेश प्रकाशित करते हैं, और आप केवल कतारों से संदेश प्राप्त करते हैं। एक्सचेंज संदेश की रूटिंग_की से कतार के बाइंडिंग_की से मेल खाने वाले पैटर्न के लिए ज़िम्मेदार है, यह निर्धारित करने के लिए कि कौन सी कतार संदेश की एक प्रति प्राप्त करनी चाहिए। पूरे AMQP मॉडल को सीखना सार्थक है, भले ही आप रूटिंग_की के समान नाम से केवल एक कतार में संदेश भेजने की योजना बना रहे हों।

यदि आप ब्राउज़र में अपने क्लाइंट का निर्माण कर रहे हैं, और आप एक प्रोटोटाइप बनाना चाहते हैं, तो आपको आज केवल एक्सएचआर का उपयोग करने पर विचार करना चाहिए, और फिर कमलोका-जेएस जैसे कुछ पर जाना चाहिए जो एएमक्यूपी (एएमक्यू प्रोटोकॉल) का शुद्ध जावास्क्रिप्ट कार्यान्वयन है। एक RabbitMQ संदेश दलाल से संवाद करने के लिए उपयोग किया जाने वाला मानक प्रोटोकॉल है। दूसरे शब्दों में, जो आप आज जानते हैं, उसके साथ इसे बनाएं, और फिर बाद में इसे गति दें, जिसका आपके टूलबॉक्स में दीर्घकालिक भविष्य है।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मैं रेडिस में कनेक्शन पूल का ठीक से उपयोग कैसे करूं?

  2. रेडिस कनेक्शन विफल होने पर रन टाइम पर रेडिस कैशिंग को अक्षम कैसे करें

  3. रेडिस सॉर्ट की गई सूचियों का उपयोग कैसे करें

  4. Redis . में फ़िल्टरिंग तत्व

  5. जावा के लिए जेडिस का उपयोग करके डॉकर रेडिस क्लस्टर इंस्टेंस से कैसे कनेक्ट करें?