2015-11-27 18 views
5

मैं माइक्रोस्कोर्सेस आर्किटेक्चर का अध्ययन कर रहा हूं और मैं वास्तव में कुछ सोच रहा हूं।माइक्रोस सर्विस, एमक्यूपी और सेवा रजिस्ट्री/डिस्कवरी

मैं आरईएसटी आधारित माइक्रोस्कोर्सेस पर अनुरोध करने के लिए अनुरोध (बैक) सेवा खोज का उपयोग करने के तथ्य के साथ ठीक हूं। अनुरोध करने के लिए मुझे यह जानना होगा कि सेवा कहां है (या कम से कम सर्वर क्लस्टर का फ्रंट)। तो यह उस मामले में एक आईपी: बंदरगाह खोजने में सक्षम होने के लिए समझ में आता है।

लेकिन मैं सोच रहा था कि AMQP से निपटने के दौरान सेवा रजिस्ट्री/डिस्कवरी का उपयोग करने का उद्देश्य क्या हो सकता है (केवल HTTP संभावित कॉल के बिना)?

मेरा मतलब है, एएमक्यूपी का उपयोग करना "मुझे इसकी ज़रूरत है, और मुझे उम्मीद है कि कोई मुझे जवाब दे सकता है", मुझे यह नहीं पता कि सर्वर कौन है जिसने मुझे प्रतिक्रिया वापस भेज दी है।

तो एएमक्यूपी आधारित माइक्रोस्कोस के साथ सेवा रजिस्ट्री/डिस्कवरी का उपयोग करने का उद्देश्य क्या है?

आपकी मदद

+0

दिलचस्प सवाल। मैंने यह भी सोचा था कि एमओएम एक सेवा खोज सुविधा की तरह काम करता है। यह स्थान पारदर्शिता और लोच प्रदान करता है। एमओएम एक सेवा रजिस्ट्री की तरह है, और आपको केवल सेवा का नाम पता होना चाहिए, उदा। एक्सचेंज नाम, और एमओएम मार्ग और लोड आपके संदेश को सेवा प्रदाताओं (उपभोक्ताओं) में से एक को संतुलित करता है और फिर आपको जवाब देता है। वाकई, मुझे आज उपलब्ध एकमात्र उत्तर में दिए गए अंक नहीं मिला। –

उत्तर

4

AMQP के लिए धन्यवाद (किसी भी माँ, वास्तव में) प्रक्रियाओं वास्तविक IP पते, संचार सुरक्षा, मार्ग, अन्य चिंताओं के बीच के बारे में कोई बात किए बिना संवाद करने के लिए एक तरह से प्रदान करता है। इसका जरूरी अर्थ यह नहीं है कि किसी भी प्रक्रिया पर भरोसा कर सकते हैं या यहां तक ​​कि प्रक्रियाओं के बारे में कोई जानकारी भी हो सकती है।

संदेश कतार प्रक्रिया के आधे हिस्से को हल करती है: दूरस्थ सेवा तक कैसे पहुंचे। लेकिन वे दूसरे छमाही को हल नहीं करते हैं: कौन सी सेवा मेरे लिए सही है। दूसरे शब्दों में, जो सेवा में:

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

उन दो समस्याएं लगभग रैखिक रूप से स्वतंत्र हैं। दूसरी तरह की समस्याओं को हल करने के लिए, आपके पास ग्रिड कंप्यूटिंग में संसाधन ब्रोकर हैं। यह सुनिश्चित करने के लिए संसाधन आवंटन भी है कि ऊपर की अंतिम वस्तु सही ढंग से प्रबंधित की गई है।

कुछ वैकल्पिक रणनीतियां हैं जैसे कि सेवा का उपयोग करने और प्रस्तावों के उत्तर देने का इरादा मल्टीकास्टिंग। उदाहरण के लिए, आप इस तरह के मामले में नीलामी नीलामी हो सकती है।

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

+0

मैं आपके उत्तर में बिंदुओं को समझने में वाकई मेहनत कर रहा हूं।आप देखते हैं कि एमओएम स्थान पारदर्शिता, लोच और भार संतुलन प्रदान करेगा, जो सेवा खोज की प्रमुख विशेषताएं हैं। मैं समझ नहीं पा रहा हूं कि "मेरे पास आवश्यक संसाधन हैं" या "भरोसा किया जा सकता है", आदि, यहां एक मुद्दा हो सकता है। मैं नए उपभोक्ताओं के साथ कई क्षणिक डॉकर कंटेनर जोड़ सकता हूं, और वे बड़े पैमाने पर आते हैं और जाते हैं। विषयों का उपयोग करके मैं निकटतम उपभोक्ता या सबसे सस्ता उपयोग करने जैसे पहलुओं को नियंत्रित कर सकता हूं, और एमओएम सबसे अधिक संभावना सुरक्षा सुविधाओं को पहले से ही प्रदान करता है। यदि थोड़ा और विस्तार कर सकता है तो यह शानदार होगा –

+0

एमओएम आपके लिए ओवरले नेटवर्क बनाएगा। यदि आप इस ओवरले नेटवर्क से जुड़ी सभी प्रक्रियाओं को नियंत्रित करते हैं तो आपको सेवा रजिस्ट्री या खोज की आवश्यकता नहीं हो सकती है। आप बस एक प्रोटोकॉल बना सकते हैं जिसमें आप एक प्रसारण संदेश भेजते हैं, "यह मेरे लिए कौन कर सकता है" और उत्तर पर भरोसा करता है। – Akira

+0

लेकिन सवाल यह था कि "किस स्थिति में मुझे सेवा रजिस्ट्री और खोज से फायदा होगा"। एक संभावित उत्तर सभी एमओएम प्रतिभागियों पर कोई पूर्व विश्वास नहीं होने से संबंधित है। अगर आप किसी पर भरोसा नहीं करना चाहते हैं या नहीं, तो आप केवल रजिस्ट्री पर भरोसा कर सकते हैं। यदि रजिस्ट्री सुझाव देती है कि आपको संसाधन ए का उपयोग करना चाहिए, तो आप ए के साथ बातचीत कर सकते हैं। उदाहरण के लिए, ऐसा लगता है कि आप सभी प्रतिभागियों को नियंत्रित करते हैं, इसलिए रजिस्ट्री होने से इस संबंध में कोई अतिरिक्त सुविधा नहीं मिलेगी। – Akira

संबंधित मुद्दे