2011-12-27 22 views
6

मुझे पता है कि 2 प्रकार की वेब-सेवाएं हैं। पहला एक कस्टम एक्सएमएल स्वरूपित संदेश और दूसरा एक एसओएपी मानक एक्सएमएल संदेश है। उनके बीच मतभेद क्या हैं? कौन सा बेहतर है, उन दो दृष्टिकोणों में से प्रत्येक के पेशेवर और विपक्ष क्या हैं?साधारण वेब-सेवा और साबुन-आधारित वेब सेवा के बीच क्या अंतर है?

+0

मुझे लगता है कि नीचे दो लिंक आपकी मदद कर सकते हैं। http://www.eggheadcafe.com/community/xml/4/82443/difference-between-xml-and-soap.aspx http://stackoverflow.com/questions/80112/whats-the-difference-between-xml -आरपीसी-एंड-साबुन –

उत्तर

5

"वेब सेवा" एक अधिक सार और सामान्य अवधारणा को संदर्भित करता है। हम कह सकते हैं कि वेब पर जो कुछ भी किया जा सकता है वह एक वेब सेवा है। एसओएपी वेब सर्विसेज या रीस्टफुल सेवाएं विशेष प्रकार की वेब सेवाएं हैं जिनकी व्यापक स्वीकृति है और उनके अपने मानक हैं। जबकि एसओएपी सेवाएं एक नए एक्सएमएल आधारित मानक पर बनाई गई हैं, वहीं रीस्टफुल दृष्टिकोण मौजूदा HTTP विधियों का उपयोग करता है, इसलिए अधिक व्यापक रूप से स्वीकार्य (मेरे अनुभव के लिए)।

+0

"[लिंक दिए गए] में एक कॉम्पैक्ट तुलना है"। नहीं वहाँ नहीं है! –

+0

ऐसा लगता है कि लिंक मर चुका है; मॉडरेटर ने पृष्ठ हटा दिया। मैंने उस वाक्य को मृत पृष्ठ का जिक्र किया है। – anilsinaci

24

"साधारण" से मुझे लगता है कि आप रीस्टफुल सेवाओं का मतलब है। इस चर्चा के लिए एक लंबे एक हो सकता है, तो मैं आपको कुछ महत्वपूर्ण बिंदुओं देने की कोशिश करेंगे:

  1. RESTful सेवाओं वेब सेवाओं के सबसे अधिक इस्तेमाल किया स्वाद कर रहे हैं। वे HTTP की कार्यक्षमता और सिद्धांतों से निकटता से जुड़े हुए हैं और जीईटी अनुरोध के रूप में सरल के रूप में उपयोग किया जा सकता है (अन्य ऑपरेशन पोस्ट, डिलीट और पुट हैं)। मूल अवधारणा "संसाधन" है जिसे एक यूआरआई द्वारा पहचाना जाता है। आरईएसटी के लिए सामान्य प्रारूप एक्सएमएल और जेएसओएन हैं। यह एक बहुत सीधी और उपयोग करने में आसान तकनीक है, जो इसे इतना व्यापक रूप से उपलब्ध कराता है।

  2. सोप वेब सेवाओं एक्सएमएल पर आधारित होते हैं, उनमें से ज्यादातर एप्लिकेशन डिजाइन के RPC शैली का पालन करने (एक सर्वर पर दूरस्थ तरीकों कॉल करके और प्रतिक्रिया हो रही है), और 3 मुख्य स्तंभों का उपयोग करें:

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

सोप वेब सेवाओं के उच्च भूमि के ऊपर हो जाते हैं और आम तौर पर बहुत वर्बोज़ संदेशों है, लेकिन अच्छा हो सकता है अगर आप अपने आवेदन में और अधिक जटिल की कार्यक्षमता और बातचीत को लागू करने की जरूरत है।

+1

इच्छा है कि मैं एक से अधिक बार मतदान कर सकता हूं। यह वास्तव में सभी का बेहतर जवाब है। – Dienekes

+0

+1 यहां मैं सहमत हूं! – Pinch

11

कड़ाई से केवल साबुन सेवाएं ही वेबसाइसेस हैं। वे डब्ल्यू 3 सी और ओएसिस द्वारा मानक WS-* Specs पर आधारित हैं। कभी-कभी वेबसाइट सेवा के रूप में भी इनकार किया जाता है जिसे पीओएक्स-एंडपॉइंट (सादा पुराना एक्सएमएल) या आरईएसटी एंडपॉइंट कहा जाता है, जो आपको HTTP GET के माध्यम से केवल कच्चे एक्सएमएल प्राप्त करने की अनुमति देता है।

एसओएपी सेवाएं अपनी स्कीमा को एक डब्ल्यूएसडीएल एंडपॉइंट (सामान्य रूप से एपेंड? ​​Wsdl सेवा अंतराल पर) के रूप में ले जाती हैं, इसलिए प्रॉक्सी ऑब्जेक्ट्स बनाने और webservice कॉल की जटिलता को छिपाने के लिए बहुत सारे टूल हैं। पीओएक्स सेवाओं के साथ आपको यह जानने की जरूरत है कि किस स्कीमा का उपयोग करना है उदा। दस्तावेज़ीकरण।

एसओएपी सेवाएं एसओएपी लिफाफा (शरीर में पेलोड के साथ हेडर और बॉडी के साथ एक एक्सएमएल स्कीमा) के अंदर पेलोड ले जाती हैं। पेलोड से स्वतंत्र हेडर होने से सामग्री को जानने के बिना सामग्री को फिर से शुरू करने, हस्ताक्षर करने और एन्क्रिप्ट करने, प्रमाणित करने की अनुमति मिलती है। लेकिन आप संदेश में अतिरिक्त ओवरहेड द्वारा भुगतान करते हैं।

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

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

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