您好,登錄后才能下訂單哦!
這篇文章主要為大家分析了RPC, SOAP, WSDL的關(guān)系是什么的相關(guān)知識點(diǎn),內(nèi)容詳細(xì)易懂,操作細(xì)節(jié)合理,具有一定參考價值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學(xué)習(xí)“RPC, SOAP, WSDL的關(guān)系是什么”的知識吧。
RPC, SOAP, WSDL都是web service的關(guān)鍵詞,這里描述一下他們的關(guān)系,下面的解釋可能比較狹義,主要為了幫助理解這三者的關(guān)系。
1.RPC
如果要調(diào)用遠(yuǎn)端的一個方法,可以使用RMI和RPC,這是2種截然不同的風(fēng)格。
RMI: (Remote Method Invocation) 直接獲取遠(yuǎn)端方法的簽名,進(jìn)行調(diào)用。優(yōu)點(diǎn)是強(qiáng)類型、編譯期可檢查錯誤;缺點(diǎn)是只限于java語言
RPC: (Remote Procedure Call) 采用客戶端/服務(wù)器方式(請求/響應(yīng)),發(fā)送請求到服務(wù)器端,服務(wù)端執(zhí)行方法后返回結(jié)果。優(yōu)點(diǎn)是跨語言跨平臺,缺點(diǎn)是編譯期無法排錯,只能在運(yùn)行時檢查。
2.SOAP
為了包裝RPC的請求信息,推出了XML-RPC,但XML-RPC只能使用有限的數(shù)據(jù)類型種類和一些簡單的數(shù)據(jù)結(jié)構(gòu)。于是就出現(xiàn)了SOAP(Simple Object Access Protocol)。SOAP最主要的工作是使用標(biāo)準(zhǔn)的XML描述了RPC的請求信息(URI/類/方法/參數(shù)/返回值)。理論上,SOAP就是一段xml,你可以通過http,smtp等發(fā)送它(復(fù)制到軟盤上,叫快遞公司送去也行?)。同樣SOAP也是跨語言的。
3.WSDL
WSDL(Web Services Description Language)是描述web服務(wù)的,是描述怎樣訪問web服務(wù)的。WSDL是用來描述SOAP的,換句話說,WSDL 文件告訴你調(diào)用 SOAP 所需要知道的一切。WSDL也是一段xml。現(xiàn)在各個語言對wsdl的支持都很成熟,可以根據(jù)同一份wsdl文件生成自己語言的客戶端。
4.其它
簡單的說Apache Axis是Apache Soap3.0,前面說過,RPC不能在編譯期進(jìn)行檢查。而使用AXIS根據(jù)WSDL生成的客戶端,卻可以避免這個問題。使用SOAP的客戶端時,全都用字符串來指定URI/服務(wù)名/方法/參數(shù)等。而AXIS生成的客戶端將這些都封裝了起來,它根據(jù)WSDL的描述生成調(diào)用接口,方便客戶端開發(fā)。
關(guān)于“RPC, SOAP, WSDL的關(guān)系是什么”就介紹到這了,更多相關(guān)內(nèi)容可以搜索億速云以前的文章,希望能夠幫助大家答疑解惑,請多多支持億速云網(wǎng)站!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。