2011-01-11 10 views
14

मुझे लगता है कि मुझे इसका जवाब पता है, लेकिन मैंने अभी देखा है कि कोई वास्तव में विपरीत कर रहा है - जो एक बहुत ही कुशल डेवलपर है, क्या उन्हें सिर्फ एक बुरा दिन था?क्या एसओए आर्किटेक्चर में किसी अन्य सेवा से किसी सेवा को कॉल करना ठीक है?

प्रश्न: क्या एसओए आर्किटेक्टेड सिस्टम में किसी सेवा के भीतर से सेवा कॉल करना ठीक है?

मैं नहीं संदेह है, लेकिन मैं वैसे भी पूछना होगा ...

उत्तर

3

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

5

मैं किसी भी कारण से क्यों नहीं सोच भी नहीं सकते। मैं कई कारणों से सोच सकता हूं कि एक सेवा दूसरी सेवा क्यों कह सकती है। मैंने कई सेवाओं को आर्किटेक्टेड और कार्यान्वित किया है जो ऐसा करते हैं। मैं अन्य आर्किटेक्चर के बारे में भी जानता हूं जो इस तरह की प्रणाली स्थापित करते हैं।

+0

ऐसा मत सोचो कि, वास्तुकला पर विचार करने के लिए उचित रूप से कटा हुआ होना चाहिए, यह एक स्पेगेटी वास्तुकला पैदा करेगा? – iwayneo

+0

मुझे लगता है कि यदि आप अपने सर्वर के माध्यम से लंबवत आरे चलाते हैं, तो आपको इससे निपटने के लिए अन्य समस्याएं मिलेंगी। मुझे यह भी लगता है कि पास्ता आंतरिक के लिए बुरा होगा। क्या आपके पास ठोस समस्याएं हैं जो आपको लगता है कि कौन सी समस्याएं उत्पन्न हो सकती हैं? – Mark

+0

मेरे पास एक मुद्दा यह है कि उदाहरण के लिए यदि मेरी वेबसाइट पर, मैं एक डब्ल्यूसीएफ सेवा कहता हूं, जो एक डब्ल्यूसीएफ सेवा कहता है, जो संभावित रूप से एक डब्ल्यूसीएफ सेवा ... आदि इत्यादि कह सकता है – iwayneo

0

"चिंताओं को अलग करने" के स्थापत्य लक्ष्य के बारे में सोचें। प्रत्येक सेवा के बारे में जानने के लिए प्रत्येक सेवा के बजाय, यह कार्यक्षमता के साझा टुकड़ों के लिए अन्य विशेष सेवाओं पर भरोसा कर सकता है

+0

मैं इस से सहमत नहीं हूं। सेवा अभिविन्यास के मूल सिद्धांतों में से एक यह है कि सेवाएं स्वायत्त हैं। यदि आप funcationality के साझा टुकड़ों के लिए अन्य विशेष सेवाओं पर "भरोसा करते हैं" तो आप अन्य वेब सेवाओं पर निर्भरता बना रहे हैं। – user1431072

0

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

अब लॉगिन करते समय, यदि उपयोगकर्ता सेवा में दृढ़ता सेवा का उदाहरण सीधे है, तो आप सेवा स्तर क्लस्टरिंग को लागू करने में सक्षम नहीं होंगे।

हमारे पास हमारे एसओए मिडलवेयर हैं और मैंने एक-दूसरे से सीधे सेवा बुलाई है। लेकिन जब हमने जेएमएस/एक्टिवएमक्यू का उपयोग करके सेवा स्तर क्लस्टरिंग लागू की, तो हमें उन अंतःस्थापित सेवाओं के लिए समस्या का सामना करना पड़ा।

3

इसका उत्तर इस प्रकार है हमेशा "यह निर्भर करता है ..." मुझे बताएं कि मेरा क्या मतलब है।

एसओए में एक और सेवा को कॉल करना निश्चित रूप से पूरी तरह स्वीकार्य बात है, यह एसओए के दिल में मौजूदा सेवाओं से नई चीजों को लिखने में सक्षम है।

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

पर विचार प्रणाली मजबूती, एक विशिष्ट वास्तुकला में एक सेवा दूसरों की तुलना में अधिक लोकप्रिय हो जाता है और कई अन्य सेवाओं यह बुला होने तक भूमि। इस सेवा के लिए कॉल पर निर्भर अन्य सभी सेवाओं के कारण इस सेवा की विफलता पूरी प्रणाली को लाती है।

, सिंक्रोनस और एसिंक्रोनस कॉल के बीच अंतर पर विचार करें जब आप क्या प्रयोग करते हैं? यह प्रत्येक का प्रभाव है?

आप कैसे डिजाइन और विभाजन सेवाओं है प्रत्येक कॉल पर सेवा सीमा पार करने की लागत को सीमित करने के?

बहुत सारे प्रश्न हैं, लेकिन यदि आप चारों ओर देखते हैं तो उत्तर खोजने के लिए कई जगहें हैं, तो मैं इनसे शुरू करने का सुझाव देता हूं।

मैं आपको थॉमस एर्ल और रोजर सत्रों द्वारा लेख पढ़ने का सुझाव दूंगा, इससे आपको एसओए के बारे में एक ठोस संभाल मिल जाएगी।

Building a SOA

SOA Design Pattern

Achieving integrity in a SOA

Why your SOA should be like a VW Beetle

SOA explained for your boss

WCF Service Performance

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