2011-05-24 24 views
14

मैं जानना चाहता हूं कि परिदृश्य/उपयोगकेस क्या हैं/जहां खरगोश एमक्यू जैसे संदेश उपभोक्ता वेब अनुप्रयोगों की सहायता कर सकते हैं।वेब अनुप्रयोग में RabbitMQ जैसे संदेश का उपयोग?

क्या सीखने के लिए कोई विशिष्ट संसाधन हैं?

वर्तमान में इस तरह की मैसेजिंग योजनाओं का उपयोग करने वाले कौन से वेब एप्लिकेशन उपयोग कर रहे हैं और कैसे?

उत्तर

10

सामान्य रूप से, एक संदेश बस (जैसे कि खरगोश एमक्यू, लेकिन सीमित नहीं) नौकरी प्रसंस्करण की विश्वसनीय कतार के लिए अनुमति देता है।

वेब एप्लिकेशन के संदर्भ में आपके लिए इसका क्या मतलब है, मांग के रूप में बढ़ने और आपके यूआई को त्वरित और उत्तरदायी रखने के लिए आपके ऐप को स्केल करने की क्षमता है।

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

इस स्थिति में, आपका वेब इंटरफ़ेस शून्य भारी भारोत्तोलन करता है, इसके बजाय बस प्रक्रिया के चरणों में उपयोगकर्ता दृश्यता देता है जैसा कि आप फिट देखते हैं (उदाहरण के लिए, नौकरी प्रक्रिया की स्थिति के साथ डेटाबेस रिकॉर्ड को क्रमशः अद्यतन कर सकती है क्वेरी और अपने उपयोगकर्ता को प्रदर्शित)।

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

7

मैं सिर्फ एक गूगल खोज किया था और निम्नलिखित के साथ आया था:

कि मिलना चाहिए आप कम से कम शुरू कर दिया,।