成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓
當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普服務(wù)體系 > 泛普博客
SOA相關(guān)的Web服務(wù)標(biāo)準(zhǔn)深入理解
申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
來源:泛普軟件當(dāng)決定采用哪一種標(biāo)準(zhǔn)的時(shí)候,最值得考慮的經(jīng)常是技術(shù)人員提出的建議。他們可能會(huì)依次向你推薦一個(gè)最容易實(shí)施的標(biāo)準(zhǔn),能夠得到最廣泛的技術(shù)支持的產(chǎn)品和最有可能在你的環(huán)境中很好地工作的標(biāo)準(zhǔn)。為了有一個(gè)能夠經(jīng)受時(shí)間的考驗(yàn)并且在為來能夠繼續(xù)擴(kuò)展的成功的SOA實(shí)施,所有這三個(gè)因素都是極為重要的,互操作性是極為重要的。
WS-I
Web服務(wù)互操作組織(WS-I)專門制定Web標(biāo)準(zhǔn)的最佳做法,以確保不同操作系統(tǒng)、平臺(tái)或者編程語言的互操作性。WS-I負(fù)責(zé)定義Web服務(wù)安全和Web服務(wù)處理技術(shù)規(guī)范等最佳做法文獻(xiàn)。這些文獻(xiàn)幫助開發(fā)人員和企業(yè)符合其他人正在采用的做法,保證戶操作性。
WS-I還發(fā)布技術(shù)規(guī)范、測(cè)試套裝軟件和如何部署這些協(xié)議的樣本。實(shí)際上,WS-I是由微軟和IBM等許多機(jī)構(gòu)組成的一個(gè)管理機(jī)構(gòu),其任務(wù)是推廣互操作的Web服務(wù)。

使用協(xié)議
Web服務(wù)依賴于協(xié)議保證通訊是有意義的。服務(wù)之間發(fā)送的數(shù)據(jù)內(nèi)容必須是以前同意的,以保證雙方都能知道收到的內(nèi)容是什么。SOAP是在交換數(shù)據(jù)時(shí)應(yīng)用最廣泛的協(xié)議的一個(gè)例子。SOAP使用XML編程語言,允許雙方都能解碼發(fā)送的內(nèi)容并且格式化來回發(fā)送的信息。
說明
我們很快將介紹一些架構(gòu),還要參考一些Web服務(wù)協(xié)議。不要混淆這兩項(xiàng)內(nèi)容是很重要的。所以下面簡(jiǎn)單介紹一下。
REST和RPC等軟件架構(gòu)不是協(xié)議。它們是規(guī)定如何實(shí)施協(xié)議的方法。
WSDL(Web服務(wù)描述語言)是用來以格式化的方式描述一個(gè)特定的Web服務(wù)的語言,以便應(yīng)用程序能夠解析這個(gè)服務(wù)。WSDL本身不以Web服務(wù)互動(dòng)方式提供任何功能。
SOAP、XML-RPC或者DCOM等協(xié)議本身確切地定義了如何傳遞消息以及一個(gè)程序如何理解它收到的數(shù)據(jù)。
SOA中有兩種主要類型的架構(gòu):RPC系列的協(xié)議和具象狀態(tài)傳輸(REST)方式。
RPC
遠(yuǎn)程過程調(diào)用(RPC)方式允許編程人員在一個(gè)系統(tǒng)上編程的時(shí)候能夠像“調(diào)用”本地資源一樣調(diào)用遠(yuǎn)程系統(tǒng)的資源。RPC式的服務(wù)的缺點(diǎn)是人們傾向于像使用他們熟悉的指定平臺(tái)上的編程語言那樣使用這種方式。如果與本地的過程相同的話,它甚至很容易調(diào)用一個(gè)遠(yuǎn)程的過程。
這個(gè)邏輯違反了“松散耦合”的概念。松散耦合概念實(shí)際上意味著遠(yuǎn)程過程不應(yīng)該依賴于任何特定的操作系統(tǒng)或者編程語言。
SOAP是XML-RPC的后續(xù)協(xié)議,僅僅是在XML中包含其信息的一個(gè)遠(yuǎn)程過程調(diào)用。SOAP使用HTTP協(xié)議發(fā)送數(shù)據(jù),這是很好和很簡(jiǎn)單的,但是,確實(shí)存在一些缺點(diǎn)。盡管如此,最近大多數(shù)Web服務(wù)仍使用HTTP協(xié)議進(jìn)行通訊,因?yàn)樗鼈兌际鞘褂肧OAP協(xié)議建立的。
REST
具象狀態(tài)傳輸(REST)方式從根本上是與遠(yuǎn)程過程調(diào)用是不同的,因?yàn)樗ぷ鞯膶哟尾煌?。一個(gè)REST調(diào)用看起來就像是任何通過HTTP協(xié)議的其它Web請(qǐng)求,而RPC調(diào)用看起來就像是一個(gè)標(biāo)準(zhǔn)的功能調(diào)用。REST的重點(diǎn)是用穩(wěn)定的資源操作,而不是單個(gè)的信息,從而產(chǎn)生更標(biāo)準(zhǔn)的和廣泛理解的互動(dòng)方式,就像HTTP協(xié)議本身一樣。REST處理簡(jiǎn)單數(shù)據(jù)的傳送塊,而RPC傳送復(fù)雜的過程。
使用REST還是RPC
是否使用REST的問題肯定是一個(gè)好問題。它好像是未來的方法。但是,你的SOA需要結(jié)合到你目前使用的每一個(gè)軟件中。REST的應(yīng)用一直很緩慢,主要是由于Web服務(wù)的支持。雖然一個(gè)REST系統(tǒng)能夠使用WSDL描述一個(gè)在HTTP上的SOAP信息,但是,還沒有足夠的支持以真正地使用它。例如,如果不安裝插件模塊,Apache甚至都不支持使用REST所需要的方法。
還有一些不屬于Web服務(wù)家族的其它標(biāo)準(zhǔn)。但是,正如你預(yù)料的那樣,這些標(biāo)準(zhǔn)沒有得到廣泛的支持。Jini、WCF和CORBA等就是一些例子。當(dāng)一家廠商要向你提供僅支持上述技術(shù)之一的產(chǎn)品,你要馬上跑開,而不是走開。Web服務(wù)目前的到了廣泛的支持。Web服務(wù)的應(yīng)用只會(huì)增長(zhǎng)。SOA本身據(jù)說是新的、不穩(wěn)定的和有風(fēng)險(xiǎn)的。但是,當(dāng)你選擇一個(gè)得到廣泛技術(shù)支持的合適的Web服務(wù)標(biāo)準(zhǔn)時(shí),這些風(fēng)險(xiǎn)基本上可以緩解。
最后,堅(jiān)持在某些類型的RPC式的系統(tǒng)的基礎(chǔ)上使用老式的SOAP是目前使用Web服務(wù)建立SOA的一種可行的機(jī)制。如果你這樣做,你就可以顯著減少鎖定廠商的機(jī)會(huì)。(IT專家網(wǎng))
本站推薦
- 12011年展望:SOA與云計(jì)算的發(fā)展趨勢(shì)
- 2歲末盤點(diǎn):2010年SOA十大應(yīng)用案例解析
- 3基于SOA的OA與ERP整合應(yīng)用
- 4金融企業(yè)通過增加SOA服務(wù)實(shí)現(xiàn)測(cè)試
- 5SOA模式:標(biāo)準(zhǔn)化業(yè)務(wù)對(duì)象
- 6ERP與SOA相結(jié)合:基于SOA的ERP體系架構(gòu)
- 7CIO可持續(xù)改善實(shí)施SOA績(jī)效的五種度量
- 8基于SOA的ERP體系架構(gòu)的研究
- 9以SOA推動(dòng)業(yè)務(wù)流程的轉(zhuǎn)變

