अगर मुझे यह प्रश्न "चर्चा" प्रश्न होने पर क्षमा करें, लेकिन मैं वास्तव में उचित स्पष्टीकरण के साथ हां/नहीं उत्तर की सराहना करता हूं।क्या आप अगले जेन मंगल रोवर के नियंत्रण एपीआई को आरपीसी के बजाय रीस्टफुल करने के लिए आर्किटेक्ट करेंगे?
मान लीजिए कि आपको रोबोट के लिए नियंत्रण API को डिज़ाइन और कार्यान्वित करना है, अगले पीढ़ी मंगल रोवर कहें। क्या आप इस एपीआई को RESTful सिद्धांतों के अनुसार आर्किटेक्ट करते हैं, या आप क्लासिक आरपीसी, जैसे XMLRPC का उपयोग करते हैं?
मैं यह पूछता हूं क्योंकि मुझे कुछ ऐसा करना है, हालांकि "रोबोट" आभासी मशीनों का संग्रह है। एपीआई रीस्टफुल बनाने के लिए, मुझे एक बल्कि प्रेरक अभियंता, एक प्रसिद्ध आरईएसटी वकील द्वारा आग्रह किया जा रहा है। मैंने कभी भी आरईएसटी सिद्धांतों का उपयोग नहीं किया है, और मैं यह देखने के लिए संघर्ष कर रहा हूं कि वे निम्न स्तर के इंटर-प्रोसेस एपीआई को डिजाइन करने में कैसे फिट होते हैं। आरईएसटी एक संशोधित डेटा भंडार के साथ बातचीत करने के विषय के साथ infused लगता है, आमतौर पर कई hops दूर। जो मैं करने की कोशिश कर रहा हूं वह रोबोट को बारीकी से नियंत्रित करने जैसा लगता है। मैं देख सकता हूं कि कैसे कोई तर्क दे सकता है कि रोबोट, सार में, केवल एक डेटा भंडार है - "बाएं मोड़ डालें", "100 मीटर यात्रा करें", "बाहरी तापमान प्राप्त करें"। लेकिन ऐसा लगता है कि यह एक बल्कि विपरीत मॉडल है। मुझे निश्चित रूप से कैशिंग या प्रॉक्सी से कोई फायदा नहीं मिलेगा ("हैलो, जेपीएल? यह कैनबरा में अकामाई सह-लो है। हम अब रोवर ले रहे हैं, ठीक है?")
तो, एक शानदार वास्तुकला है यहाँ उपयोगी है? क्या यह आरपीसी से भी बेहतर है जब बातचीत इतनी कम ध्यान केंद्रित होती है?
जेपीएल/अकामाई/usurp टिप्पणी से प्यार करें :-) –
एक्सएमएलआरपीसी बिल्कुल इसके लिए डिज़ाइन किया गया है। इस संदर्भ में आरईएसटी क्रियाओं में से कोई भी समझ में नहीं आता है, आपका पूरा काम दूरस्थ प्रक्रिया कॉल को कॉल कर रहा है। इसके अतिरिक्त, अन्य आरईएसटी लाभ (जैसे कि अंतर्निहित पकड़) यहां या तो कोई समझ नहीं लेते हैं। – FlySwat