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

為什么需要Web Service

申請免費試用、咨詢電話:400-8352-114

AMTeam.org

為什么需要Web Service

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

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

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

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

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

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

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

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

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

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

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