वितरित वस्तु संचार: Difference between revisions

From Vigyanwiki
(Created page with "वितरित कंप्यूटिंग वातावरण में, वितरित वस्तु संचार वितरित वस्तुओ...")
 
No edit summary
Line 1: Line 1:
वितरित कंप्यूटिंग वातावरण में, [[वितरित वस्तु]] संचार वितरित वस्तुओं के बीच संचार का एहसास करता है। मुख्य भूमिका वस्तुओं को डेटा तक पहुंचने और दूरस्थ वस्तुओं (गैर-स्थानीय [[कंप्यूटर डेटा भंडारण]] में रहने वाली वस्तुओं) पर [[विधि (कंप्यूटर प्रोग्रामिंग)]] को लागू करने की अनुमति देना है। रिमोट ऑब्जेक्ट पर एक विधि का आह्वान करना रिमोट मेथड इनवोकेशन (RMI) या रिमोट इनवोकेशन के रूप में जाना जाता है, और यह [[सुदूर प्रणाली संदेश]] (RPC) का [[ ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग ]] एनालॉग है।
वितरित अभिकलन परिसर में, [[वितरित वस्तु]] संचार वितरित वस्तुओं के बीच संचार का अनुभव करता है। मुख्य भूमिका वस्तुओं को डेटा तक पहुंचने और दूरस्थ वस्तुओं (गैर-स्थानीय [[कंप्यूटर डेटा भंडारण]] में रहने वाली वस्तुओं) पर [[विधि (कंप्यूटर प्रोग्रामिंग)|विधियों (कंप्यूटर प्रोग्रामिंग)]] को लागू करने की अनुमति देना है। सुदूरवर्ती वस्तुओं पर एक विधि का आह्वान करना सुदूरवर्ती उत्क्रियण प्रणाली (आरएमआई) या सुदूरवर्ती उत्क्रियण के रूप में जाना जाता है, और यह [[सुदूर प्रणाली संदेश|सुदूरवर्ती संदेश]] [[सुदूर प्रणाली संदेश|प्रणाली]] (आरपीसी) का [[ ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग |वस्तुओं अभिविन्यस्त प्रोग्रामिंग]] एनालॉग है।


== [[ वर्ग ठूंठ ]]्स और कंकाल ==
== [[ वर्ग ठूंठ | वर्ग प्रतिपर्ण]] और [[रूपरेखा]] ==
संचार चैनल को कैसे लागू किया जाए, इस पर व्यापक रूप से उपयोग किए जाने वाले दृष्टिकोण को [[कक्षा का कंकाल]] और क्लास कंकाल का उपयोग करके महसूस किया जाता है। वे उत्पन्न वस्तुएँ हैं जिनकी संरचना और व्यवहार चुने हुए संचार प्रोटोकॉल पर निर्भर करते हैं, लेकिन सामान्य रूप से अतिरिक्त कार्यक्षमता प्रदान करते हैं जो नेटवर्क पर विश्वसनीय संचार सुनिश्चित करता है।
संचार चैनल को किस प्रकार  लागू किया जाए, इस पर व्यापक रूप से उपयोग किए जाने वाले दृष्टिकोण को [[कक्षा का कंकाल|वर्ग प्रतिपर्ण]] और वर्ग रूपरेखा का उपयोग करके महसूस किया जाता है। वे जनित वस्तुएँ हैं जिनकी संरचना और व्यवहार चुने हुए संचार संदेशाचार पर निर्भर करते हैं, लेकिन सामान्य रूप से अतिरिक्त कार्यक्षमता प्रदान करते हैं जो नेटवर्क पर विश्वसनीय संचार सुनिश्चित करता है।


RMI में, एक स्टब (जो क्लाइंट पर बिट है) को प्रोग्रामर द्वारा एक [[इंटरफ़ेस (ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग)]] के रूप में परिभाषित किया गया है। आरएमआईसी (आरएमआई कंपाइलर) क्लास स्टब बनाने के लिए इसका इस्तेमाल करता है। स्टब टाइप चेकिंग करता है। कंकाल को एक वर्ग में परिभाषित किया गया है जो इंटरफ़ेस स्टब (जावा) को लागू करता है।<ref>{{cite web |url=http://www-itec.uni-klu.ac.at/~harald/ds2001/rmi/rmi.html |title=जावा रिमोट मेथड इनवोकेशन (RMI) का परिचय|website=www-itec.uni-klu.ac.at |url-status=dead |archive-url=https://web.archive.org/web/20020326062030/http://www-itec.uni-klu.ac.at/~harald/ds2001/rmi/rmi.html |archive-date=2002-03-26}} </ref>
आरएमआई में, एक प्रतिपर्ण (जो उपभोगता पर बिट है) को क्रमादेशक द्वारा एक [[इंटरफ़ेस (ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग)|अंतरापृष्ठ (वस्तुओं -अभिविन्यस्त प्रोग्रामिंग)]] के रूप में परिभाषित किया गया है। आरएमआईसी (आरएमआई रूपांतरक) वर्ग प्रतिपर्ण बनाने के लिए इसका उपयोग करता है। प्रतिपर्ण टाइप जाँच प्रक्रिया करता है। रूपरेखा को एक वर्ग में परिभाषित किया गया है जो अंतरापृष्ठ प्रतिपर्ण (जावा) को लागू करता है।<ref>{{cite web |url=http://www-itec.uni-klu.ac.at/~harald/ds2001/rmi/rmi.html |title=जावा रिमोट मेथड इनवोकेशन (RMI) का परिचय|website=www-itec.uni-klu.ac.at |url-status=dead |archive-url=https://web.archive.org/web/20020326062030/http://www-itec.uni-klu.ac.at/~harald/ds2001/rmi/rmi.html |archive-date=2002-03-26}} </ref>


[[Image:Distributed object communication.png]]जब कोई कॉलर कॉल किए गए ऑब्जेक्ट पर रिमोट कॉल करना चाहता है, तो वह अपने क्लास स्टब के लिए अनुरोध करता है, जो रिमोट क्लास कंकाल के साथ संचार शुरू करता है। नतीजतन, स्टब कॉलर तर्कों को नेटवर्क पर सर्वर कंकाल तक पहुंचाता है। कंकाल तब प्राप्त डेटा को कॉल किए गए ऑब्जेक्ट को पास करता है, प्रतिक्रिया की प्रतीक्षा करता है और परिणाम को क्लाइंट स्टब पर लौटाता है। ध्यान दें कि कॉल करने वाले और कॉल किए गए ऑब्जेक्ट के बीच कोई सीधा संचार नहीं है।
[[Image:Distributed object communication.png]]
 
जब कोई कॉलर कॉल किए गए वस्तुओं पर सुदूरवर्ती कॉल करना चाहता है, तो वह अपने वर्ग प्रतिपर्ण के लिए अनुरोध करता है, जो सुदूरवर्ती वर्ग रूपरेखा के साथ संचार शुरू करता है। परिणाम स्वरुप , प्रतिपर्ण कॉलर तर्कों को नेटवर्क पर परिसेवक रूपरेखा तक पहुंचाता है। रूपरेखा तब प्राप्त डेटा को कॉल किए गए वस्तुओं को पास करता है, प्रतिक्रिया की प्रतीक्षा करता है और परिणाम को उपभोगता प्रतिपर्ण पर लौटाता है। ध्यान दें कि कॉल करने वाले और कॉल किए गए वस्तुओं के बीच कोई प्रत्यक्ष संचार नहीं है।


अधिक विवरण में, संचार में कई चरण होते हैं:
अधिक विवरण में, संचार में कई चरण होते हैं:
# कॉलर स्टब द्वारा कार्यान्वित एक स्थानीय [[सबरूटीन]] को कॉल करता है
# कॉलर प्रतिपर्ण द्वारा कार्यान्वित एक स्थानीय [[सबरूटीन]] को कॉल करता है
# स्टब [[मार्शलिंग (कंप्यूटर विज्ञान)]] कॉल प्रकार और एक अनुरोध संदेश में इनपुट तर्क
# प्रतिपर्ण [[मार्शलिंग (कंप्यूटर विज्ञान)]] कॉल प्रकार और एक अनुरोध संदेश में इनपुट तर्क
# क्लाइंट स्टब नेटवर्क पर सर्वर को संदेश भेजता है और वर्तमान निष्पादन [[ धागा (कंप्यूटर विज्ञान) ]] को ब्लॉक करता है
# उपभोगता प्रतिपर्ण नेटवर्क पर परिसेवक को संदेश भेजता है और वर्तमान निष्पादन [[ धागा (कंप्यूटर विज्ञान) |धागा (कंप्यूटर विज्ञान)]] को ब्लॉक करता है
# सर्वर कंकाल नेटवर्क से अनुरोध संदेश प्राप्त करता है
# परिसेवक रूपरेखा नेटवर्क से अनुरोध संदेश प्राप्त करता है
# कंकाल अनुरोध संदेश से कॉल प्रकार को अनपैक करता है और कॉल की गई वस्तु पर सबरूटीन को देखता है
# रूपरेखा अनुरोध संदेश से कॉल प्रकार को अनपैक करता है और कॉल की गई वस्तु पर सबरूटीन को देखता है
# कंकाल मार्शलिंग (कंप्यूटर विज्ञान) प्रक्रिया तर्क
# रूपरेखा मार्शलिंग (कंप्यूटर विज्ञान) प्रक्रिया तर्क
# कंकाल सबरूटीन को कॉल की गई वस्तु पर निष्पादित करता है
# रूपरेखा सबरूटीन को कॉल की गई वस्तु पर निष्पादित करता है
# कॉल की गई वस्तु एक संगणना करती है और परिणाम लौटाती है
# कॉल की गई वस्तु एक संगणना करती है और परिणाम लौटाती है
# कंकाल आउटपुट तर्कों को प्रतिक्रिया संदेश में पैक करता है
# रूपरेखा आउटपुट तर्कों को प्रतिक्रिया संदेश में पैक करता है
# कंकाल नेटवर्क पर क्लाइंट को संदेश भेजता है
# रूपरेखा नेटवर्क पर उपभोगता को संदेश भेजता है
# क्लाइंट स्टब नेटवर्क से प्रतिक्रिया संदेश प्राप्त करता है
# उपभोगता प्रतिपर्ण नेटवर्क से प्रतिक्रिया संदेश प्राप्त करता है
# स्टब संदेश से आउटपुट तर्कों को अनपैक करता है
# प्रतिपर्ण संदेश से आउटपुट तर्कों को अनपैक करता है
# स्टब कॉलर को आउटपुट आर्ग्युमेंट पास करता है, निष्पादन थ्रेड (कंप्यूटर साइंस) जारी करता है और कॉलर तब निष्पादन में जारी रहता है
# प्रतिपर्ण कॉलर को आउटपुट आर्ग्युमेंट पास करता है, निष्पादन थ्रेड (कंप्यूटर साइंस) जारी करता है और कॉलर तब निष्पादन में जारी रहता है


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


== स्टब ==
== स्टब ==
वितरित वस्तु संचार में भाग लेने वाले क्लाइंट साइड ऑब्जेक्ट को स्टब या प्रॉक्सी के रूप में जाना जाता है, और यह [[ प्रॉक्सी वस्तु ]] का एक उदाहरण है।
वितरित वस्तु संचार में भाग लेने वाले उपभोगता साइड वस्तुओं को प्रतिपर्ण या प्रॉक्सी के रूप में जाना जाता है, और यह [[ प्रॉक्सी वस्तु |प्रॉक्सी वस्तु]] का एक उदाहरण है।


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


ठूंठ इसके लिए जिम्मेदार है:
ठूंठ इसके लिए जिम्मेदार है:
* सर्वर क्लास कंकाल की ओर संचार शुरू करना
* परिसेवक वर्ग रूपरेखा की ओर संचार शुरू करना
* कॉलर ऑब्जेक्ट से कॉल का अनुवाद करना
* कॉलर वस्तुओं से कॉल का अनुवाद करना
* मापदंडों का मार्शलिंग (कंप्यूटर विज्ञान)।
* मापदंडों का मार्शलिंग (कंप्यूटर विज्ञान)।
* कक्षा के ढांचे को सूचित करना कि कॉल को बुलाया जाना चाहिए
* कक्षा के ढांचे को सूचित करना कि कॉल को बुलाया जाना चाहिए
* नेटवर्क पर क्लास कंकाल के लिए तर्क पारित करना
* नेटवर्क पर वर्ग रूपरेखा के लिए तर्क पारित करना
* क्लास कंकाल से प्रतिक्रिया का क्रमांकन
* वर्ग रूपरेखा से प्रतिक्रिया का क्रमांकन
* कॉल करने वाले को सूचित करना कि कॉल पूर्ण हो गई है
* कॉल करने वाले को सूचित करना कि कॉल पूर्ण हो गई है


== कंकाल ==
== रूपरेखा ==
वितरित वस्तु संचार में भाग लेने वाले सर्वर साइड ऑब्जेक्ट को कंकाल (या स्टब; शब्द यहाँ टाला गया) के रूप में जाना जाता है।
वितरित वस्तु संचार में भाग लेने वाले परिसेवक साइड वस्तुओं को रूपरेखा (या स्टब; शब्द यहाँ टाला गया) के रूप में जाना जाता है।


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


कंकाल इसके लिए जिम्मेदार है:
रूपरेखा इसके लिए जिम्मेदार है:
* क्लास स्टब से आने वाले डेटा को सर्वर ऑब्जेक्ट के लिए सही अप-कॉल में अनुवाद करना
* वर्ग प्रतिपर्ण से आने वाले डेटा को परिसेवक वस्तुओं के लिए सही अप-कॉल में अनुवाद करना
* प्राप्त आंकड़ों से तर्कों का क्रमांकन
* प्राप्त आंकड़ों से तर्कों का क्रमांकन
* सर्वर ऑब्जेक्ट्स के लिए तर्क पास करना
* परिसेवक ऑब्जेक्ट्स के लिए तर्क पास करना
* सर्वर ऑब्जेक्ट्स से लौटाए गए मानों का मार्शलिंग (कंप्यूटर साइंस)।
* परिसेवक ऑब्जेक्ट्स से लौटाए गए मानों का मार्शलिंग (कंप्यूटर साइंस)।
* नेटवर्क पर क्लाइंट क्लास स्टब पर मान वापस भेजना
* नेटवर्क पर उपभोगता वर्ग प्रतिपर्ण पर मान वापस भेजना


== स्टब/कंकाल दृष्टिकोण का उपयोग कर प्रोटोकॉल ==
== स्टब/रूपरेखा दृष्टिकोण का उपयोग कर प्रोटोकॉल ==


* [[पोर्टेबल वितरित वस्तुओं]] (पीडीओ) - [[ उद्देश्य सी ]]
* [[पोर्टेबल वितरित वस्तुओं]] (पीडीओ) - [[ उद्देश्य सी |उद्देश्य सी]]
* [[कॉमन ऑब्जेक्ट रिक्वेस्ट ब्रोकर आर्किटेक्चर]] (CORBA) - अंतर-भाषा
* [[कॉमन ऑब्जेक्ट रिक्वेस्ट ब्रोकर आर्किटेक्चर|कॉमन वस्तुओं रिक्वेस्ट ब्रोकर आर्किटेक्चर]] (CORBA) - अंतर-भाषा
* [[ जावा दूरस्थ विधि मंगलाचरण ]] (जावा आरएमआई) - जावा
* [[ जावा दूरस्थ विधि मंगलाचरण | जावा दूरस्थ विधि मंगलाचरण]] (जावा आरएमआई) - जावा
* [[वितरित घटक वस्तु मॉडल]] (DCOM) - Microsoft, अंतर-भाषा
* [[वितरित घटक वस्तु मॉडल]] (DCOM) - Microsoft, अंतर-भाषा
*:(ध्यान दें कि स्टब को प्रॉक्सी कहा जाता है और कंकाल को स्टब कहा जाता है<ref>[http://msdn.microsoft.com/en-us/library/ms692621%28VS.85%29.aspx MSDN: Marshalling details.]</ref>)
*:(ध्यान दें कि प्रतिपर्ण को प्रॉक्सी कहा जाता है और रूपरेखा को प्रतिपर्ण कहा जाता है<ref>[http://msdn.microsoft.com/en-us/library/ms692621%28VS.85%29.aspx MSDN: Marshalling details.]</ref>)
* .NET रीमोटिंग - Microsoft, अंतर-भाषा
* .NET रीमोटिंग - Microsoft, अंतर-भाषा
* [[डीडीऑब्जेक्ट्स]] - [[ बोरलैंड डेल्फी ]]
* [[डीडीऑब्जेक्ट्स]] - [[ बोरलैंड डेल्फी |बोरलैंड डेल्फी]]
* [[वितरित रूबी]] (DRb) - [[रूबी प्रोग्रामिंग भाषा]]
* [[वितरित रूबी]] (DRb) - [[रूबी प्रोग्रामिंग भाषा]]


Line 69: Line 71:
==संदर्भ==
==संदर्भ==
{{Reflist}}
{{Reflist}}
* Plášil, František and Stal, Michael. [http://dsrg.mff.cuni.cz/publications/FPLUSOBR.pdf "An Architectural View of Distributed Objects and Components in CORBA, Java RMI, and COM/DCOM"], ''Software Concepts & Tools (vol. 19, no. 1)'', January, 1998.
* Plášil, František and Stal, Michael. [http://dsrg.mff.cuni.cz/publications/FPLUSOBR.pdf "An Architectural View of Distributed Objects and Components in CORBA, Java आरएमआई, and COM/DCOM"], ''Software Concepts & Tools (vol. 19, no. 1)'', January, 1998.
* Druschel, Peter [http://www.cs.rice.edu/~druschel/comp413/lectures/rmi-corba.html "Distributed Program Construction"]
* Druschel, Peter [http://www.cs.rice.edu/~druschel/comp413/lectures/rmi-corba.html "Distributed Program Construction"]
* Farley, Jim. ''[https://web.archive.org/web/20080222033010/http://www.oreilly.com/catalog/javadc/chapter/ch03.html Java Distributed Computing]'', O'Reilly, January, 1998.
* Farley, Jim. ''[https://web.archive.org/web/20080222033010/http://www.oreilly.com/catalog/javadc/chapter/ch03.html Java Distributed Computing]'', O'Reilly, January, 1998.

Revision as of 10:51, 19 May 2023

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

वर्ग प्रतिपर्ण और रूपरेखा

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

आरएमआई में, एक प्रतिपर्ण (जो उपभोगता पर बिट है) को क्रमादेशक द्वारा एक अंतरापृष्ठ (वस्तुओं -अभिविन्यस्त प्रोग्रामिंग) के रूप में परिभाषित किया गया है। आरएमआईसी (आरएमआई रूपांतरक) वर्ग प्रतिपर्ण बनाने के लिए इसका उपयोग करता है। प्रतिपर्ण टाइप जाँच प्रक्रिया करता है। रूपरेखा को एक वर्ग में परिभाषित किया गया है जो अंतरापृष्ठ प्रतिपर्ण (जावा) को लागू करता है।[1]

Distributed object communication.png

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

अधिक विवरण में, संचार में कई चरण होते हैं:

  1. कॉलर प्रतिपर्ण द्वारा कार्यान्वित एक स्थानीय सबरूटीन को कॉल करता है
  2. प्रतिपर्ण मार्शलिंग (कंप्यूटर विज्ञान) कॉल प्रकार और एक अनुरोध संदेश में इनपुट तर्क
  3. उपभोगता प्रतिपर्ण नेटवर्क पर परिसेवक को संदेश भेजता है और वर्तमान निष्पादन धागा (कंप्यूटर विज्ञान) को ब्लॉक करता है
  4. परिसेवक रूपरेखा नेटवर्क से अनुरोध संदेश प्राप्त करता है
  5. रूपरेखा अनुरोध संदेश से कॉल प्रकार को अनपैक करता है और कॉल की गई वस्तु पर सबरूटीन को देखता है
  6. रूपरेखा मार्शलिंग (कंप्यूटर विज्ञान) प्रक्रिया तर्क
  7. रूपरेखा सबरूटीन को कॉल की गई वस्तु पर निष्पादित करता है
  8. कॉल की गई वस्तु एक संगणना करती है और परिणाम लौटाती है
  9. रूपरेखा आउटपुट तर्कों को प्रतिक्रिया संदेश में पैक करता है
  10. रूपरेखा नेटवर्क पर उपभोगता को संदेश भेजता है
  11. उपभोगता प्रतिपर्ण नेटवर्क से प्रतिक्रिया संदेश प्राप्त करता है
  12. प्रतिपर्ण संदेश से आउटपुट तर्कों को अनपैक करता है
  13. प्रतिपर्ण कॉलर को आउटपुट आर्ग्युमेंट पास करता है, निष्पादन थ्रेड (कंप्यूटर साइंस) जारी करता है और कॉलर तब निष्पादन में जारी रहता है

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

स्टब

वितरित वस्तु संचार में भाग लेने वाले उपभोगता साइड वस्तुओं को प्रतिपर्ण या प्रॉक्सी के रूप में जाना जाता है, और यह प्रॉक्सी वस्तु का एक उदाहरण है।

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

ठूंठ इसके लिए जिम्मेदार है:

  • परिसेवक वर्ग रूपरेखा की ओर संचार शुरू करना
  • कॉलर वस्तुओं से कॉल का अनुवाद करना
  • मापदंडों का मार्शलिंग (कंप्यूटर विज्ञान)।
  • कक्षा के ढांचे को सूचित करना कि कॉल को बुलाया जाना चाहिए
  • नेटवर्क पर वर्ग रूपरेखा के लिए तर्क पारित करना
  • वर्ग रूपरेखा से प्रतिक्रिया का क्रमांकन
  • कॉल करने वाले को सूचित करना कि कॉल पूर्ण हो गई है

रूपरेखा

वितरित वस्तु संचार में भाग लेने वाले परिसेवक साइड वस्तुओं को रूपरेखा (या स्टब; शब्द यहाँ टाला गया) के रूप में जाना जाता है।

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

रूपरेखा इसके लिए जिम्मेदार है:

  • वर्ग प्रतिपर्ण से आने वाले डेटा को परिसेवक वस्तुओं के लिए सही अप-कॉल में अनुवाद करना
  • प्राप्त आंकड़ों से तर्कों का क्रमांकन
  • परिसेवक ऑब्जेक्ट्स के लिए तर्क पास करना
  • परिसेवक ऑब्जेक्ट्स से लौटाए गए मानों का मार्शलिंग (कंप्यूटर साइंस)।
  • नेटवर्क पर उपभोगता वर्ग प्रतिपर्ण पर मान वापस भेजना

स्टब/रूपरेखा दृष्टिकोण का उपयोग कर प्रोटोकॉल

यह भी देखें

संदर्भ

  1. "जावा रिमोट मेथड इनवोकेशन (RMI) का परिचय". www-itec.uni-klu.ac.at. Archived from the original on 2002-03-26.
  2. MSDN: Marshalling details.