SOA "सादे अंग्रेजी में" क्या है? [बन्द है]


112

क्या कोई स्पष्ट अंग्रेजी में बता सकता है कि SOA क्या है ? मैं यहाँ SOA सुनता हूँ, वहाँ SOA लेकिन मैं यह नहीं समझ सकता कि यह क्या है और इसके लिए क्या उपयोग किया जाता है। क्या यह कुछ सरल अवधारणा थी और बाद में कुछ विशाल या क्या हुआ?

विकी सहित सभी दस्तावेज थोड़े सार हैं या शायद मैं एक बेवकूफ हूं और इसे प्राप्त नहीं करता हूं। क्या इस पर कोई बेवकूफ गाइड है?

वास्तव में इन तीन अक्षरों के पीछे क्या है?


7
मुझे लगता है कि यह भी अच्छा होगा अगर लोग SOA को केवल उन तरीकों से समझाना बंद कर दें, जो पहले से ही समझने वाले लोग "हैलो, दुनिया" कोडिंग उदाहरणों को समझ और दिखा सकते हैं। डेमो कोड बोलता है ज़ोर thn blabbing।
फिल

@Phil - मेरा उत्तर जांचें। मैंने एक सादृश्य का उपयोग करने की कोशिश की है।
निकलस

एक बेवकूफ गाइड है, वास्तव में: amazon.com/Service-Oriented-Achitchiture-Dummies-Edition/dp/…
nullability

3
अमेज़ॅन एक आदर्श उदाहरण है, वास्तव में। कुछ बिंदु पर बेजोस ने जोर देकर कहा कि अमेज़ॅन के कोड बेस के हर हिस्से को एक एपीआई होना चाहिए और वेब अनुरोधों का जवाब देना चाहिए। यहाँ अनुच्छेद: apievangelist.com/2012/01/12/... । जब आप लॉग इन करते हैं तो आप इसे देख सकते हैं - अमेज़न अपने स्वयं के लॉगिन सिस्टम के लिए OpenID का उपयोग करता है! अधिकांश वेबसाइट लॉगिन के लिए एक अंतर्निहित प्रणाली का उपयोग करती हैं। एक फायदा यह है कि मुझे लगता है कि वे अपनी सभी साइटों और सेवाओं के लिए एक ही लॉगिन का उपयोग कर सकते हैं।
जॉर्डन रीटर

जवाबों:


49

आपको यह लेख (SOA क्या है? - SOA और वेब सेवाएँ समझाया गया) उपयोगी हो सकता है।

एक छोटा सा टीज़र:

  • SOA इस तरह से आर्किटेक्चर अनुप्रयोगों की एक शैली है कि वे असतत सॉफ़्टवेयर एजेंटों से बने होते हैं, जिनमें सरल, अच्छी तरह से परिभाषित इंटरफेस होते हैं और एक आवश्यक फ़ंक्शन करने के लिए ढीले युग्मन के माध्यम से आर्केस्ट्रा किया जाता है।

  • SOA में 2 भूमिकाएँ हैं- एक सेवा प्रदाता और एक सेवा उपभोक्ता। एक सॉफ्टवेयर एजेंट दोनों भूमिका निभा सकता है। SOA एक पूरी तरह से नई अवधारणा नहीं है - हालांकि, यह लेख मुख्य रूप से SOA पर केंद्रित है जैसा कि वेब सेवाओं के साथ लागू किया गया है।


6
Mmmmm ... CORBA, IDL, क्लाइंट-सर्वर ... 1980 के दशक में ऐसा लगता है कि दर्द होता है! ;
--ड

64

SOA कुछ बहुत पुराने विचारों के लिए एक नया बिल्ला है:

  • अपने कोड को पुन: प्रयोज्य मॉड्यूल में विभाजित करें।

  • एक मॉड्यूल में किसी भी डिजाइन निर्णय को बदलना जो बदलने की संभावना है।

  • अपने मॉड्यूल को इस तरह से डिज़ाइन करें कि उन्हें विभिन्न उपयोगी तरीकों से जोड़ा जा सके (कभी-कभी "परिवार" या "उत्पाद लाइन" कहा जाता है)।

ये सभी बेडरोल सॉफ़्टवेयर-डेवलपमेंट सिद्धांत हैं, इनमें से कई डेविड पारनास द्वारा पहले व्यक्त किए गए हैं।

SOA में नया क्या है

  • आप इसे एक नेटवर्क पर कर रहे हैं।

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


43

मैं एक सेवा उन्मुख वास्तुकला (SOA) को और भी अधिक उन्नत शब्दों और तकनीकी शब्दों का उपयोग करते हुए समझाता हूं। मैं सादे अंग्रेजी में एक सादृश्य का उपयोग करते हुए, इसे आम आदमी के लिए समझाने पर एक शॉट देना चाहूंगा

लेकिन पहले SOA
SOA का विवरण तीन परतों में वर्णित किया जा सकता है जैसा कि नीचे दी गई तस्वीर में देखा गया है। एक तरफ हमारे पास प्रोवाइडर है और दूसरी तरफ हमारे पास कंज्यूमर है , जो एक ब्रिज से अलग है जहां दोनों पक्ष संवाद करते हैं।

उपभोक्ता व्यवसाय के लिए आवश्यक कई एप्लिकेशन का उपयोग करता है और प्रदाता उन घटकों का उपयोग करता है जो इन अनुप्रयोगों को जानकारी प्रदान करते हैं। वे एक आम वास्तुकला का उपयोग करके सेवाओं के एक सेट के माध्यम से संवाद करते हैं।


यहां छवि विवरण दर्ज करें


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

इस मॉडल की तुलना SOA से की जा सकती है। घर के लोग रेडिएटर, कंप्यूटर, शौचालय, लैंप, अंडरफ्लोर हीटिंग, बाथटब आदि जैसे कई अलग-अलग "एप्लिकेशन" का उपयोग करते हैं। ये एप्लिकेशन इस बात की परवाह नहीं करते हैं कि शहर पानी कैसे पैदा करता है, बिजली बनाता है या कचरे को संभालता है जैसा कि यह काम करता है। शहर के घटक जनरेटर, पानी पंप और स्वच्छता क्षेत्र हैं। यह इन सभी जरूरतों के साथ घर प्रदान करता है, लेकिन यह घर पर निर्भर करता है कि वह किस तरह से इसे फिट देखता है।

मुझे आशा है कि इसने कम से कम किसी SOA की बेहतर तस्वीर दी है।


27

मान लेते हैं कि आपके पास चार कुक हैं। SOA में, आप मान लेते हैं कि वे एक-दूसरे से नफरत करते हैं, इसलिए आप उन्हें एक-दूसरे के साथ कम से कम बात करने की कोशिश करते हैं।

आप उसे कैसे करते हैं? ठीक है, आप पहले भूमिकाओं और इंटरफ़ेस को परिभाषित करेंगे - कुक 1 सलाद बनायेगा, 2 कुक सूप बनायेगा, 3 कुक स्टेक बनायेगा, आदि .. फिर आप व्यंजन को टेबल पर अच्छी तरह से व्यवस्थित करेंगे (इसलिए ये हैं इंटरफेस) और कहते हैं, "हर कोई कृपया अपने निर्माण को अपने निर्धारित व्यंजनों में रखें। किसी और की परवाह न करें।"

इस तरह, चार रसोइयों को एक-दूसरे से कम से कम बात करनी होती है, जो सॉफ्टवेयर विकास में बहुत अच्छा है - जरूरी नहीं कि वे एक-दूसरे से नफरत करते हैं, लेकिन अन्य कारणों जैसे भौतिक स्थान, निर्णय लेने में दक्षता आदि।

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

SOA के सबसे सफल कार्यान्वयन में से एक अमेज़न पर था। अपने डिजाइन के कारण, वे अपने पूरे बुनियादी ढांचे को फिर से पैकेज कर सकते थे और इसे अमेज़न वेब सेवा के रूप में बेच सकते थे।

* यह SOA का केवल एक पहलू है।


17

SOA एक वास्तुशिल्प शैली है, लेकिन यह भी एक दृष्टिकोण है कि कैसे विषम अनुप्रयोग को विकसित और एकीकृत किया जाना चाहिए। SOA का मुख्य उद्देश्य अखंड अनुप्रयोगों से दूर हटना और पुन: प्रयोज्य सेवाओं का एक सेट है जिसे अनुप्रयोगों के निर्माण के लिए तैयार किया जा सकता है।

IMHO, SOA केवल उद्यम स्तर पर समझ में आता है, और इसका मतलब है कि एक भी आवेदन के लिए कुछ भी नहीं है।

कई उद्यमों में, प्रत्येक विभाग के पास उद्यम अनुप्रयोगों का अपना सेट था जो निहित था

  1. इसी तरह की सुविधा कई बार लागू की गई थी

  2. डेटा (जैसे ग्राहक या कर्मचारी डेटा) को कई अनुप्रयोगों के बीच साझा करने की आवश्यकता है

  3. आवेदन विभाग-केंद्रित थे।

SOA के साथ, विचार है कि पुन: प्रयोज्य सेवाओं को एंटरप्राइज़-वाइड उपलब्ध कराया जाए, ताकि अनुप्रयोग का निर्माण किया जा सके और उनका निर्माण किया जा सके। SOA का वादा है

  1. बार-बार समान सुविधाओं को फिर से लागू करने की आवश्यकता नहीं है (उदाहरण के लिए ग्राहक या कर्मचारी सेवा प्रदान करें)

  2. एक साथ अनुप्रयोगों के एकीकरण और सामान्य डेटा या सुविधाओं तक पहुंच को सुगम बनाता है

  3. उद्यम केंद्रित विकास का प्रयास।

SOA विज़न के लिए एक तकनीकी बदलाव के साथ-साथ एक संगठनात्मक बदलाव की आवश्यकता होती है। जबकि यह कुछ समस्या को हल करता है, यह अन्य का भी परिचय देता है, उदाहरण के लिए, सुरक्षा SOA के साथ बहुत कठिन है जो अखंड अनुप्रयोग के साथ है। इसलिए एसओए इस पर चर्चा के अधीन है कि यह काम करता है या नहीं।

यह SOA का 1000 फुट का दृश्य है। हालाँकि यह यहाँ नहीं रुकता। एसओए को पूरक करने वाली अन्य अवधारणाएं हैं जैसे व्यवसाय प्रक्रिया ऑर्केस्ट्रेशन (बीपीएम), उद्यम सेवा बस (ईएसबी), जटिल घटना प्रसंस्करण (सीईपी), आदि। वे सभी आईटी / व्यावसायिक संरेखण की समस्या से निपटते हैं , अर्थात , आईटी के पास कैसे है प्रभावी ढंग से व्यापार का समर्थन करने में सक्षम हो।


1
हां, लेकिन कोई और व्यक्ति चाहता है कि आप ओरेकल एसओए जैसी हर चीज को नियंत्रित करने के लिए या Microsoft WCF का उपयोग करने के लिए उनके मोनोलिथ को खरीदें या उपयोग करें। क्या हमेशा एक मोनोलिथ नहीं होगा?
जॉनी

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

4
SOA के संगठन-स्तर के 'बड़े' अर्थ का उल्लेख करने के लिए +1। बहुत सारे अन्य उत्तर सॉफ़्टवेयर घटक पहलू पर ध्यान केंद्रित करते हैं, जो पूरी तरह से बोलना पूरी तस्वीर नहीं है (भले ही इसका अर्थ है कि लोग बहुत समय का उपयोग करते हैं)।
occulus

10

SOA सेवा उन्मुख वास्तुकला के लिए संक्षिप्त है।

SOA सॉफ्टवेयर एप्लिकेशन को इस तरह से डिजाइन और लिख रहा है कि अलग-अलग सॉफ्टवेयर मॉड्यूल को उच्च स्तर पर पुनः प्रयोज्य के साथ एकीकृत किया जा सकता है।

ज्यादातर लोग SOA को क्लाइंट / सर्वर सॉफ़्टवेयर-वेब-सर्विसेज लिखने के रूप में प्रतिबंधित करते हैं। लेकिन यह SOA का बहुत छोटा संदर्भ है। SOA इससे बहुत बड़ा है और पिछले कुछ वर्षों में वेब-सेवाओं को सांप्रदायिकता का प्राथमिक माध्यम बनाया गया है, शायद यही कारण है कि लोग SOA को सामान्य रूप से SOA की सीमाओं और अर्थ को सीमित करने वाली वेब-सेवाओं के रूप में सोचते हैं।

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

SOA का अभ्यास करने से DRY को लागू करने से उच्च पुन: प्रयोज्य होता है [अपने आप को दोहराएं नहीं] जिसके परिणामस्वरूप उच्च बनाए रखने योग्य सॉफ़्टवेयर होते हैं। स्थिरता किसी भी सॉफ्टवेयर आर्किटेक्चर के बारे में सोचने वाली पहली चीज है - SOA आपको देता है।


6

जहां तक ​​मैं समझता हूं, वहां मूल अवधारणा यह है कि आप छोटी "सेवाएं" बनाते हैं जो अन्य प्रणालियों के लिए कुछ उपयोगी प्रदान करती हैं और बड़े सिस्टम के निर्माण से बचती हैं जो सिस्टम के अंदर सब कुछ करने की प्रवृत्ति रखते हैं ।

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


2
कृपया आर्किटेक्चर प्रश्नों पर अनुमान न लगाएं। Stackoverflow एक विशेषज्ञ का जवाब पाने के लिए एक जगह है, न कि एक लेख से एक यादृच्छिक अनुमान जो आपने पिछले साल देखा था। यह दुखद है कि इस जवाब को कोई वोट मिला।
बेंटऑनकोडिंग

5

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

एक SOA का निर्माण

SOA डिजाइन पैटर्न

एक SOA में अखंडता प्राप्त करना

आपका SOA VW बीटल की तरह क्यों होना चाहिए

SOA ने आपके बॉस के लिए समझाया

WCF सेवा प्रदर्शन


4

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

तो आप Oracle का SOA खरीदते हैं और Oracle आपके सभी भागों का बॉस बन जाता है। आने वाले अन्य सभी खिलाड़ियों को एक सेवा (वेब ​​सेवा या जो कुछ भी है) के माध्यम से SOA के साथ काम करना पड़ता है। Oracle मोनोलिथ सब कुछ का ख्याल रखता है (मोनोलिथ का मतलब अपमानजनक नहीं है)। अरे हाँ, आपको सामने या कुछ और पर ASP.NET MVC मिला है।

मुख्य बात यह है कि उन सिस्टम के अंदर और बाहर की चीजें प्रभावित हो रही हैं और विक्रेता ओरेकल एसओए, माइक्रोसॉफ्ट डब्ल्यूसीएफ को इस सब के दिमाग के रूप में रख रहे हैं। सब कुछ सभी ओओपी / यूड की तरह, द्रव, अंदर और बाहर जाने वाली चीजें बिना किसी प्रभाव के, यहां तक ​​कि मानव सेवाओं तक, न केवल कंप्यूटर।

मेरे लिए इसका मतलब है वेब सेवाओं का एक समूह (या जो भी हम उन्हें भविष्य में कहते हैं) एक अच्छे फ्रंट एंड के साथ। और अगर आप डेटाबेस के मालिक हैं तो बस डेटाबेस को मारो और buzzwords के बारे में चिंता करना बंद करो। ठीक है।



3

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


3

ittoolbox ब्लॉग से।

निम्नलिखित पिछले डिजाइन तकनीकों के समानताओं और अंतरों को रेखांकित करता है:

• SOA बनाम स्ट्रक्चर्ड प्रोग्रामिंग ओ समानताएँ: अधिकांश सबरूटीन कॉल के समान है जहाँ पैरामीटर पारित किए जाते हैं और फ़ंक्शन के संचालन को कॉलर से अमूर्त किया जाता है - जैसे CICS लिंक और निष्पादित और COBOL CALL आरक्षित शब्द। कॉपीबुक का उपयोग डेटा संरचना को परिभाषित करने के लिए किया जाता है जिसे आमतौर पर सेवाओं के लिए XML स्कीमा के रूप में परिभाषित किया जाता है। o भिन्नताएं: SOA शिथिल रूप से युग्मित है एक सेवा के लिए आसन्न परिवर्तन का उपभोक्ता पर कम प्रभाव पड़ता है ("कॉलिंग" प्रोग्राम) और सेवाएँ भाषाओं और प्लेटफ़ॉर्म पर इंटरऑपरेबल होती हैं।

• SOA बनाम OOA / OOD o समानताएँ: एनकैप्सुलेशन, एब्स्ट्रेक्शन और डिफाइंड इंटरफेसेस o डिफरेंसेस: SOA शिथिल रूप से बिना किसी वर्ग पदानुक्रम या वंशानुक्रम, निम्न स्तर के अमूर्त - वर्ग स्तर बनाम व्यवसाय सेवा के साथ जोड़ा जाता है।

• SOA बनाम विरासत घटक आधारित विकास (CBD) - जैसे CORBA, DCOM, EJB o समानताएँ: पुन: संयोजन घटकों, अंतरालों, दूरस्थ कॉल o अंतरों के माध्यम से पुन: उपयोग: मानकों का व्यापक रूप से अपनाना, XML स्कीमाज़ / मार्शल्ड ऑब्जेक्ट्स, सर्विस ऑर्केस्ट्रेशन, पुन: उपयोग के लिए डिज़ाइन करना यह आसान है, सेवाओं को व्यवसाय केंद्रित बनाम आईटी केंद्रित किया जाता है, व्यावसायिक सेवाएं निश्चित रूप से दानेदार होती हैं (व्यापक दायरे में)

• SOA (एकीकरण के लिए) बनाम एंटरप्राइज़ एप्लिकेशन इंटीग्रेशन (EAI) o समानताएं: सर्वोत्तम प्रथाएं (अच्छी तरह से परिभाषित इंटरफेस, मानकीकृत स्कीमा, घटना संचालित वास्तुकला), पुन: प्रयोज्य इंटरफेस, सामान्य स्कीमा ओ अंतर: मानक, गोद लेने और बेहतर उपकरण


3

उपरोक्त प्रतिक्रियाओं को पढ़ना, यह मुझे लगता है कि SOA वही है जो डेवलपर्स (कम से कम अच्छे वाले) पहले दिन से कर रहे हैं।


2

यह "स्ट्रक्चर ऑफ़ एरर्स" के लिए भी खड़ा हो सकता है (जैसा कि "एरेस ऑफ़ स्ट्रक्चर") के विपरीत, जो समानांतर (विशेष रूप से SIMD) प्रोग्रामिंग में एक सामान्य विषय है, लेकिन मैं अनुमान लगा रहा हूं कि आप यहाँ क्या मतलब नहीं है!


टिप्पणी के बिना थोड़ा कठोर अपमानजनक !!
टॉम

2
@Downvoters: सवाल वास्तव में डाउनडोमिंग टॉम्स के उत्तर को सही ठहराने के लिए पर्याप्त संदर्भ नहीं देता है। सिर्फ इसलिए कि सेवा आर्किटेक्चर के संदर्भ में SOA शब्द से हर कोई पंगु है, यह गलत नहीं है।
सेबेस्टियन मच

1
@phresnel टैग सोआ है और यदि आप उस पर मंडरा सकते हैं तो एक त्वरित सेकंड के लिए आपको क्सेटिटॉन के संदर्भ का स्पष्ट विवरण दिखाई देगा।
बेंटऑनकोडिंग

4
@Robotsushi: और अगर आप एक त्वरित सेकंड के लिए टैग पर शोध कर सकते हैं तो आप देख सकते हैं कि विवरण को उत्तर देने के एक वर्ष से अधिक समय बाद जोड़ा गया था।
सेबेस्टियन मच

मुझे लगता है कि यदि आप किसी प्रश्न के संदर्भ में अनिश्चित हैं तो आप एक विशेषज्ञ का जवाब देने में सक्षम नहीं हैं। प्रश्न की प्रकृति के बारे में टिप्पणी में एक सरल प्रश्न इस रहस्य को जल्दी से हल कर देता।
बेंटऑनकोडिंग

2

SOA एक चर्चा है जो प्रौद्योगिकी विक्रेताओं द्वारा उनकी एंटरप्राइज़ सर्विस बस संबंधित प्रौद्योगिकियों को बेचने में मदद करने के लिए आविष्कार किया गया था। विचार यह है कि आप उद्यम में अपने छोटे द्वीप अनुप्रयोग बनाते हैं (जैसे: लेखांकन प्रणाली, स्टॉक नियंत्रण प्रणाली, आदि) सभी सेवाओं को बेनकाब करते हैं, ताकि उन्हें लचीले ढंग से 'अनुप्रयोगों' में बांटा जा सके, या कुल उद्यम स्कॉप व्यवसाय के हिस्से बन जाएं। तर्क।

मूल रूप से पुराने बोलियों का एक भार जो लगभग कभी भी काम नहीं करता है, क्योंकि यह इस बिंदु को याद करता है कि प्रौद्योगिकी में जिस तरह से यह एक संगठन है उसका कारण संस्कृति, विकास, फर्म का इतिहास और लॉक इन इतना अधिक है कि कोई भी प्रौद्योगिकी के पुनर्गठन का प्रयास विफल है।


1

फ्लॉस वीकली पॉडकास्ट के इस सप्ताह के संस्करण के लिए एक सुनो , जिसमें एसओए शामिल है। विवरण बहुत उच्च स्तर के हैं और बहुत अधिक तकनीकी विवरणों में नहीं हैं (हालांकि SOA परियोजनाओं के अधिक ठोस और पहचानने योग्य उदाहरण सहायक होंगे।


1

एक पारंपरिक अनुप्रयोग वास्तुकला है:

  • एक यूजर इंटरफेस
  • अपरिभाषित सामान (कार्यान्वयन) जो उपयोगकर्ता इंटरफ़ेस के पीछे इनकैप्सुलेटेड / छिपा हुआ है

यदि आप डेटा को प्रोग्रामेटिक रूप से एक्सेस करना चाहते हैं, तो आपको स्क्रीन-स्क्रैपिंग का सहारा लेना पड़ सकता है।

एसओए मुझे ऐसा आर्किटेक्चर लगता है जो यूआई को उजागर करने के बजाय मशीन-पठनीय डेटा और / या एपीआई को उजागर करने पर ध्यान केंद्रित करता है।


1

SOA या सर्विस-ओरिएंटेड आर्किटेक्चर एक सॉफ्टवेयर आर्किटेक्चर पैटर्न है जिसमें एप्लिकेशन या सिस्टम अंतर्निहित (और आमतौर पर वितरित) सॉफ़्टवेयर सेवाओं से निर्मित होते हैं, जो विशिष्ट विशेषताओं के सेट के अनुरूप होते हैं:

  1. इंटरफ़ेस, नीति और अनुबंध आधारित
  2. स्थान पारदर्शिता
  3. स्वायत्त
  4. सार
  5. पुन: प्रयोज्य
  6. composable
  7. राज्यविहीन
  8. खोज योग्य
  9. एक्सटेंसिबल
  10. आजादी से मिलना

SOA का प्राथमिक लक्ष्य सोफ़ेव विकास की चपलता है, अर्थात आसानी से और सस्ते में परिवर्तन का जवाब देने की क्षमता, इस प्रकार व्यवसायों को बदलते बाजारों में तेजी से प्रतिक्रिया देने की अनुमति मिलती है।

सेवाएँ आमतौर पर (लेकिन किसी भी तरह से विशेष रूप से) वेब सेवाओं के रूप में लागू की जाती हैं, यानी वे सर्वव्यापी वेब HTTP प्रोटोकॉल पर काम करती हैं, और या तो XML- आधारित SOAP या हल्के (और अधिक लोकप्रिय) REST प्रतिमान का उपयोग करके लागू की जाती हैं।


1

निर्भर करता है कि आप कौन हैं!

यदि आप एक व्यवसाय के स्वामी हैं, तो SOA आपकी आय और व्यावसायिक चपलता को बढ़ाने का एक उपाय है। यदि आप एक आश्चर्यचकित करने वाले वास्तुकार हैं, तो SOA एक खाली कैनवास पर सॉफ्टवेयर के अच्छे और साफ टुकड़े को खींचने का एक तरीका है। यदि आप एक आर्किटेक्ट SOA हैं तो एक इंटीग्रेशन प्लेटफ़ॉर्म पर शिथिल युग्मित सेवाओं को डिज़ाइन करने का उपाय है, बस सेवाओं को आउटलेट्स में प्लग करना। यदि आप एक विकासशील एसओए हैं, तो एक प्रोग्रामिंग प्रतिमान है जहां एक सेवा डिजाइन और कोड के केंद्र में है।

आपको 100-SOA- प्रश्न [pdf] पढ़ना चाहिए

चियर्स


1

सर्विस ओरिएंटेड आर्किटेक्चर (SOA) एक सॉफ्टवेयर आर्किटेक्चरल स्टाइल है, जो एप्लिकेशन को प्लग करने योग्य भागों के संग्रह के रूप में बनाता है, जिनमें से प्रत्येक को अन्य अनुप्रयोगों द्वारा पुन: उपयोग किया जा सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.