मैं माइक्रो-सेवाओं का उपयोग करके एक एप्लिकेशन डिज़ाइन कर रहा हूं और कई सेवाओं से डेटा एकत्र करने के लिए सर्वोत्तम तंत्र पर अनिश्चित हूं।
मेरा मानना है कि दो विकल्प हैं:
- एक 'अंतर-सेवा' संचार तंत्र को एकीकृत करें जो सेवाओं को सीधे बात करने की अनुमति देता है। एपीआई गेटवे एक व्यक्तिगत सेवा को कॉल करेगा, जो एपीआई गेटवे के समेकित प्रतिक्रिया को वापस करने से पहले, डेटा एकत्र करने के लिए अन्य सेवाओं को कॉल करेगा। API तब कॉलर को प्रतिसाद देता है। (यह तब तुल्यकालिक कॉल करना होगा जब कॉल टू सर्विसबी को सर्विसए से प्रतिक्रिया की आवश्यकता होती है। आईई सेपरेट पर्सन एंड एड्रेस सर्विसेज।)
- एपीआई गेटवे प्रत्येक सेवा को सीधे कॉल करें और प्रतिक्रिया लौटने से पहले एपीआई के भीतर डेटा को मजबूत करें।
मैं दूसरे विकल्प की ओर झुक रहा हूं, क्योंकि सेवाएं एक-दूसरे से बात करते हुए युग्मन का परिचय देती हैं, इस स्थिति में मैं सिर्फ एक अखंड आवेदन को आर्किटेक्ट कर सकता हूं। हालाँकि, कुछ गंभीर कमियाँ हैं जिन्हें मैं इस विकल्प के साथ अपने सिर के ऊपर से हटा सकता हूं:
एपीआई के कई सेवाओं के लिए कई कॉल निष्पादित करने से एपीआई सर्वर पर लोड बढ़ जाता है, खासकर जब उनमें से कुछ कॉल अवरुद्ध हो रहे हों।
इस विधि का अर्थ होगा कि एपीआई को इस बात की 'जानकारी' होनी चाहिए कि एप्लिकेशन क्या करने की कोशिश कर रहा है (बदले में सेवाओं को कॉल करने और फिर डेटा को मजबूत करने के लिए IE तर्क को एपीआई में प्रोग्राम करना होगा), बल्कि तब सूक्ष्म सेवाओं के लिए एक गूंगा 'समापन बिंदु' के रूप में कार्य करें।
मैं जानना चाहूंगा कि इस समस्या के लिए मानक दृष्टिकोण क्या है और अगर कोई दूसरा तीसरा विकल्प है जो मुझे याद आ रहा है?