सर्विसबस क्या है और मुझे कब आवश्यकता है?


101

मैंने NServiceBus के बारे में बात करते सुना है , लेकिन मुझे वास्तव में समझ नहीं आया कि यह क्या है। वे ".net के लिए सबसे लोकप्रिय ओपन-सोर्स सर्विस बस" होने का दावा करते हैं।

इसलिए; एक "सेवा बस" क्या है, और मुझे कब आवश्यकता है?


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

9
@Wardy मैं आपके कथन से असहमत हूँ। तथ्य यह है कि आप कुछ नहीं समझते हैं या यह नहीं जानते हैं कि यह क्या है, इसका मतलब यह नहीं है कि इससे आपको इसके बारे में जानने में मदद नहीं मिलेगी
क्रिस्टियन तोमा

यह अज्ञानता का एक बहाना नहीं था, लेकिन इस ओर इशारा करते हुए कि सेवा बस एक शब्द है जिसे बहुत बार फेंका जाता है जब आप उस समस्या को हल कर देते हैं जिससे आपको या तो इसकी आवश्यकता होगी या आपको इसकी आवश्यकता नहीं होगी और इस तरह आपको कभी चिंता नहीं करनी चाहिए यह।
युद्ध

मैं इसे एडिट के रूप में जोड़ूंगा, लेकिन यह मूल रूप से प्रश्न को बदल देगा ... NServiceBus को अब "विशेष रूप से सेवा प्लेटफ़ॉर्म" के रूप में जाना जाता है और इसे विशेष रूप से. net पर पाया जा सकता है (जो कि NServiceBus.com को अब तक रीडायरेक्ट करता है)।
डैन एटकिंसन

यदि आप किसी ऐसी चीज़ का नाम या अवधारणा नहीं जानते हैं जो पहले से मौजूद है, तो अपना स्वयं का लिखने की संभावना है। इसलिए उनके बारे में जानना अच्छा है इसलिए आप उनका उपयोग कर सकते हैं (यदि आपको आवश्यकता हो)
noelicus

जवाबों:


80

आप SOA के ईथरनेट के रूप में एक सेवा बस के बारे में सोच सकते हैं।

सबसे पहले और सबसे महत्वपूर्ण, यह ईथरनेट में एक आईपी पते की तरह चीजों की पहचान करने की एक भाषा का परिचय देता है। यह नाम स्वाभाविक रूप से कुछ नहीं है।

अगला, आपके पास प्रत्येक नोड पर कुछ भौतिक शामिल हैं, जैसे अर्ध-जुड़े संचार का समर्थन करने के लिए बस के मामले में एक कतार, या रूपक में एक ईथरनेट कार्ड।

सिर्फ भौतिक से परे, संचार के लिए "प्रोटोकॉल" हिस्सा है, जैसे ईथरनेट के लिए ओएसआई स्टैक। बस के साथ, यह क्लाइंट लाइब्रेरी है जिसका उपयोग एप्लिकेशन कोड द्वारा किया जाता है।

अंततः, आप वितरित सिस्टम के निर्माण के लिए अगले उच्च स्तर के एब्सट्रैक्शन प्रदान करने के रूप में एक सर्विस बस देख सकते हैं। आप इसका उपयोग क्लाइंट-सर्वर संचार के लिए भी कर सकते हैं ताकि आपको टिकाऊ वन-वे मैसेजिंग के साथ-साथ सर्वर को क्लाइंट को सूचनाओं को वापस लाने के लिए उपयोग किया जा सके।

विशेष रूप से, यदि आप कतारबद्ध तकनीक के उपयोग के साथ शांति बनाने के लिए NServiceBus का उपयोग करना चाहते हैं, तो आप आसानी से उपयोग कर सकते हैं - RabbitMQ, MSMQ, रेगुलर SQL टेबल्स, अमेज़ॅन SQS, एज़्योर स्टोरेज क्यूब्स और एज़्योर सर्विस बस की आपकी पसंद।


धन्यवाद! सोचिए मुझे अब बड़ी तस्वीर मिल गई है! क्या आप वास्तव में इस सवाल को उस सत्र के लिए थोड़ा तैयार होने के लिए कह रहे थे जो आप आज रात को आयोजित कर रहे हैं, लेकिन ऐसा नहीं लगता कि मैं इसे
बनाऊंगा

12

एंटरप्राइज सर्विस बस के लिए विकिपीडिया लेख देखें ।

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

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


तो मैं इसका उपयोग डेस्कटॉप क्लाइंट एप्लिकेशन और सर्वर के बीच संचार करने के लिए कर सकता हूं? जहां सर्वर इनडोर है, वह है।
stiank81

आप ऐसा कर सकते हैं। आप इसका उपयोग विभिन्न सेवाओं, विभिन्न सेवाओं के विभिन्न संस्करणों आदि के बीच संचार के लिए भी कर सकते हैं (स्थितियों में जहां सेवाएं विभिन्न प्रोटोकॉल का उपयोग करती हैं)।
जस्टिन निस्नर

11

यह शब्द SOA के साथ पेश किया गया था जो एक तरह से EAI का उत्तराधिकारी (चर्चा शब्द के रूप में) है ।

जब तुम्हें इसकी जरूरत हो? यह एक अच्छा सवाल है। यह बहुत जटिलता के साथ आता है।

यदि यह इसके कारणों से अधिक समस्याओं को हल करता है, तो अंगूठे का एक नियम।

गंभीर होने के लिए यदि आपके पास एक विषम वातावरण है और व्यावसायिक प्रक्रियाओं के साथ संरेखित (अलग) अनुप्रयोगों (विभिन्न प्रौद्योगिकी का उपयोग) करना चाहते हैं। तब आर्केस्ट्रा और कोरियोग्राफी के लिए BPEL (लेकिन यह माइग्रेशन द्वारा समस्याओं का परिचय देता है) का उपयोग करने में मददगार हो सकता है

संपादित करें: विकिपीडिया पर क्या नहीं है, अभ्यास है: एक ईएसबी विशेष कनेक्टर का उपयोग करके अनुकूलित कर सकता है, कोरबा या जावा एंटरप्राइज के साथ उपयोग के लिए पुराने टर्मिनल अनुप्रयोगों को इंटरऑपरेबिलिटी से मतलब है। दोष यह है कि SOAP के आसपास 100 से अधिक 'मानक' भारी प्रयास के बिना सहयोग नहीं करते हैं।

यदि आपको 2 बड़ी आश्वासन कंपनियों के विलय के बाद छह महीने के भीतर आईटी सिस्टम को इंटरकनेक्ट करना है, तो आपको निश्चित रूप से इसकी आवश्यकता है।


तो - मेरे डेस्कटॉप एप्लिकेशन में, जिसमें सर्वर साइड के साथ "सरल" संचार होता है, सर्विस बस के साथ बड़े जाने की आवश्यकता नहीं है? क्या यह मुझे सर्वर से पुश मॉडल लागू करने में मदद कर सकता है? या इस परिदृश्य में लाभ की तुलना में अधिक दर्द होगा?
२०:२२ पर stiank81

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

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