監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 甲方項(xiàng)目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉
重慶OA行業(yè)資訊

當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普各地 > 重慶OA系統(tǒng) > 重慶OA行業(yè)資訊

為什么需要Web Service

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

AMTeam.org

為什么需要Web Service

從前,分布式的應(yīng)用程序邏輯需要使用分布式的對(duì)象模型,諸如:微軟的分布式組件對(duì)象模型(DCOM)、對(duì)象管理集團(tuán)的公用對(duì)象請(qǐng)求代理程序體系結(jié)構(gòu)(CORBA)或Sun的遠(yuǎn)程方法調(diào)用(RMI)。通過(guò)使用這種基本結(jié)構(gòu),開(kāi)發(fā)人員仍可擁有使用本地模型所提供的豐富資源和精確性,并可將服務(wù)置于遠(yuǎn)程系統(tǒng)中。

當(dāng)我已經(jīng)有了我中意的中間件平臺(tái)(RMI, Jini, CORBA, DCOM 等等)時(shí),為什么還要為Web而煩惱呢?中間件確實(shí)提供了強(qiáng)大的服務(wù)實(shí)現(xiàn)手段,但是,這些系統(tǒng)有一個(gè)共同的缺陷,那就是它們無(wú)法擴(kuò)展到互聯(lián)網(wǎng)上:它們要求服務(wù)客戶端與系統(tǒng)提供的服務(wù)本身之間必須進(jìn)行緊密耦合,即要求一個(gè)同類(lèi)基本結(jié)構(gòu)。這樣的系統(tǒng)往往十分脆弱:如果一端的執(zhí)行機(jī)制發(fā)生變化,那么另一端便會(huì)崩潰。例如,如果服務(wù)器應(yīng)用程序的接口發(fā)生更改,那么客戶端便會(huì)崩潰。

要求提供緊密耦合的基本結(jié)構(gòu),無(wú)可厚非,許多應(yīng)用程序均是基于這種系統(tǒng)構(gòu)建而成的。但是,當(dāng)各個(gè)公司需要相互合作、或信息技術(shù)提供商擴(kuò)大業(yè)務(wù)范圍時(shí),便很難實(shí)現(xiàn)單一而統(tǒng)一的基本結(jié)構(gòu)。您根本無(wú)法保證您希望與之進(jìn)行遠(yuǎn)程通信的管道的另一端,具備所有您需要的基本結(jié)構(gòu):對(duì)于它使用的操作系統(tǒng)、對(duì)象模型或編程語(yǔ)言,您可能一無(wú)所知。

相反,Web服務(wù)彼此是松散偶合的。連接中的任何一方均可更改執(zhí)行機(jī)制,卻不影響應(yīng)用程序的正常運(yùn)行。從技術(shù)角度講,人們已轉(zhuǎn)向使用一種基于消息的異步技術(shù)來(lái)實(shí)現(xiàn)高可靠性的系統(tǒng)性能,通過(guò)使用諸如HTTP、簡(jiǎn)單郵件傳輸協(xié)議(SMTP)以及至為重要的XML來(lái)實(shí)現(xiàn)統(tǒng)一的連接。

Web作為信息發(fā)布者的力量就在于簡(jiǎn)單且無(wú)處不在,這對(duì)解決現(xiàn)在這樣一個(gè)分裂中間件世界很重要。Web通過(guò)在傳統(tǒng)中間件平臺(tái)上更有效實(shí)現(xiàn)的Services,來(lái)提供一個(gè)統(tǒng)一且廣泛適用的接口,這樣就改善了這個(gè)平臺(tái)。

從一個(gè)N層應(yīng)用程序結(jié)構(gòu)的角度來(lái)看,web service只是一個(gè)方便程序訪問(wèn)的包裝,服務(wù)還是要靠中間件來(lái)實(shí)現(xiàn)。訪問(wèn)包括服務(wù)請(qǐng)求處理(監(jiān)聽(tīng)者)和一個(gè)支持商業(yè)邏輯操作的接口,商業(yè)邏輯本身是由傳統(tǒng)的中間件平臺(tái)實(shí)現(xiàn)的。

從理論上講,開(kāi)發(fā)人員可通過(guò)調(diào)用Web應(yīng)用編程接口(API)(就像調(diào)用本地服務(wù)一樣),將Web服務(wù)集成到應(yīng)用程序中,不同的是Web API調(diào)用可通過(guò)互聯(lián)網(wǎng)發(fā)送給位于遠(yuǎn)程系統(tǒng)中的某一服務(wù)。例如,Microsoft Passport服務(wù)使得開(kāi)發(fā)人員能夠?qū)δ硲?yīng)用程序進(jìn)行驗(yàn)證。通過(guò)Passport服務(wù)編程,開(kāi)發(fā)人員可以充分利用Passport的基本結(jié)構(gòu),通過(guò)運(yùn)行Passport來(lái)維護(hù)用戶數(shù)據(jù)庫(kù),以確保它的正常運(yùn)行、定期備份等等。

消息傳遞系統(tǒng)將通信的基本單元打包成自我描述型的數(shù)據(jù)包(又稱作消息),并將其放到網(wǎng)絡(luò)纜線中。消息傳遞系統(tǒng)與分布式對(duì)象系統(tǒng)之間的本質(zhì)區(qū)別在于:要求發(fā)送方辨識(shí)接收方的基本結(jié)構(gòu)的程度有所不同。在分布式系統(tǒng)中,發(fā)送方需對(duì)接收方的情況作出種種猜測(cè):應(yīng)用程序是如何激活或拆包的,調(diào)用的是什么樣的界面,等等。

另一方面,消息傳遞系統(tǒng)會(huì)在纜線格式級(jí)上創(chuàng)建合同。發(fā)送方既不需考慮消息被接收后的情況,也不需考慮接發(fā)雙方之間的通信情況,唯一需要考慮的是接收方是否能辯識(shí)發(fā)送的消息內(nèi)容。

在纜線格式級(jí)上創(chuàng)建合同的優(yōu)勢(shì)不言而喻。例如,接收方可在任何時(shí)刻進(jìn)行更改,而不會(huì)干擾發(fā)送方的消息發(fā)送,只要它仍可辯識(shí)原有消息的內(nèi)容。另外,發(fā)送方無(wú)需任何特殊的軟件即可與接收方通信:只要它發(fā)出正確格式的消息,接收方就可以響應(yīng)。

發(fā)布:2007-03-25 10:27    編輯:泛普軟件 · xiaona    [打印此頁(yè)]    [關(guān)閉]
相關(guān)文章: