當前位置:工程項目OA系統(tǒng) > 泛普各地 > 河北O(jiān)A系統(tǒng) > 石家莊OA系統(tǒng) > 石家莊OA信息化
架構Web Service:什么是Web服務?
架構Web Service:什么是Web服務?
柴曉路 (
Chief System Architect
2001年7月24日
本文是架構Web服務的系列文章的第二篇,從Web服務的技術定義開始,來探討什么是Web服務。首先,作者從技術角度詳細分析了Web服務作為Internet環(huán)境下的軟件組件的基本角色,從這個基本角色開始,詳細介紹了這個組件對象的包裝規(guī)范Web
Service "stack",并對Web服務的應用做了分類,最后借助Garnter
Group的材料考察了Web服務的當前發(fā)展狀況。
在本系列的上一篇文章中,我就為什么需要Web服務,從商業(yè)利益需求的角度進行了分析。本文將結合技術驅動的發(fā)展需求,詳細介紹從技術上來看,到底什么是Web服務,以及Web服務的應用分類。就技術角度而言,無論從哪個角度來看,Web服務都是對象/組件技術在Internet中的延伸。
本文所引用的資源主要包括兩類,一類是Web服務的技術資源網站,包含了大量Web服務的技術信息,另一類是Web服務“stack"系列技術規(guī)范,他們是一個整體的技術體系,包括UDDI、SOAP、WSDL、XML等。本文的最后給出了這些資源的鏈接,有興趣的讀者可以通過這些資源鏈接找到所需的內容。
Web對象
從外部的使用者的角度而言,Web服務是一種部署在Web上的對象/組件,它具備以下特征:
完好的封裝性,Web服務既然是一種部署在Web上的對象,自然具備對象的良好封裝性,對于使用者而言,他能且僅能看到該對象提供的功能列表。
松散耦合,這一特征也是源于對象/組件技術,當一個Web服務的實現發(fā)生變更的時候,調用者是不會感到這一點的,對于調用者來說,只要Web服務的調用界面不變,Web服務的實現任何變更對他們來說都是透明的,甚至是當Web服務的實現平臺從J2EE遷移到了.NET或者是相反的遷移流程,用戶都可以對此一無所知。對于松散耦合而言,尤其是在Internet環(huán)境下的Web服務而言,需要有一種適合Internet環(huán)境的消息交換協(xié)議。而XML/SOAP正是目前最為適合的消息交換協(xié)議。
使用協(xié)約的規(guī)范性,這一特征從對象而來,但相比一般對象其界面規(guī)范更加規(guī)范化和易于機器理解。首先,作為Web服務,對象界面所提供的功能應當使用標準的描述語言來描述(比如WSDL);其次,由標準描述語言描述的服務界面應當是能夠被發(fā)現的,因此這一描述文檔需要被存儲在私有的或公共的注冊庫里面。同時,使用標準描述語言描述的使用協(xié)約將不僅僅是服務界面,它將被延伸到Web服務的聚合、跨Web服務的事務、工作流等,而這些又都需要服務質量(QoS)的保障。其次,我們知道安全機制對于松散耦合的對象環(huán)境的重要性,因此我們需要對諸如授權認證、數據完整性(比如簽名機制)、消息源認證以及事務的不可否認性等運用規(guī)范的方法來描述、傳輸和交換。最后,在所有層次的處理都應當是可管理的,因此需要對管理協(xié)約運用同樣的機制。
使用標準協(xié)議規(guī)范,作為Web服務,其所有公共的協(xié)約完全需要使用開放的標準協(xié)議進行描述、傳輸和交換。這些標準協(xié)議具有完全免費的規(guī)范,以便由任意方進行實現。一般而言,絕大多數規(guī)范將最終有W3C或OASIS作為最終版本的發(fā)布方和維護方。
高度可集成能力。由于Web服務采取簡單的、易理解的標準Web協(xié)議作為組件界面描述和協(xié)同描述規(guī)范,完全屏蔽了不同軟件平臺的差異,無論是CORBA、DCOM還是EJB都可以通過這一種標準的協(xié)議進行互操作,實現了在當前環(huán)境下最高的可集成性。
Web Service "Stack"
在前一節(jié)中,我們已經了解到為了完成在松散耦合的環(huán)境下的對象訪問,以及在基本對象訪問之上的諸如事務、工作流、安全機制等。實現一個完整的Web服務體系需要有一系列的協(xié)議規(guī)范來支撐。
Figure 1. Web Service "stack"
其中,綠色部分是先前已經定義好的并且廣泛使用的傳輸層和網絡層的標準:IP、HTTP、SMTP等。而藍色部分是目前開發(fā)的Web服務的相關標準協(xié)議,包括服務調用協(xié)議SOAP、服務描述協(xié)議WSDL和服務發(fā)現/集成協(xié)議UDDI,以及服務工作流描述語言WSFL。而橙色部分描述的是更高層的待開發(fā)的關于路由、可靠性以及事務等方面的協(xié)議。黃色部分是各個協(xié)議層的公用機制,這些機制一般由外部的正交機制來完成。
從以上這個技術層次圖我們看以看到,Web服務追求的第一目標是簡單性??赡艽蠹視X得很奇怪,有那么多協(xié)議,怎么能說他簡單。
首先,這些協(xié)議本身都是簡單的,無論是HTTP, FTP等傳統(tǒng)的TCP/IP系統(tǒng)的網絡協(xié)議,還是SOAP, WSDL, UDDI, WSFL等基于XML的協(xié)議,他們設計原則中的一個最重要點就是力求簡單性。相信大家如果對XML、SOAP等有深入了解的話,一定會深深體會這一點。
其次,一個可以使用的Web服務應當按照需要選用若干層次的功能,而無需所有的特性。比如在目前狀況下,一個簡單應用可能只要使用WSDL/SOAP就可以架構一個符合規(guī)范的Web服務了。
最后,所有的機制完全是基于現有的技術,并沒有創(chuàng)造一個完全的新體系。無論是IPv4、HTTP、FTP這些現有的網絡協(xié)議,還是SOAP、WSDL等這些基于XML而定義的協(xié)議都是遵循著一個原則:繼承原有的被廣泛接受的技術,這樣才能使得Web服務被廣泛接受。
Web服務的類別
綜合當今的Web應用以及Web服務的特點,我們認為Web服務實施的領域可以分為四類:
Business-Oriented Web Service: 該類服務針對的是那些面向企業(yè)應用服務,包括企業(yè)內部的erp系統(tǒng),企業(yè)間的SCM/CRM等系統(tǒng)。當這些系統(tǒng)以Web服務的形式在網絡(Internet和intranet)中出現時,企業(yè)內的應用集成將更未容易,而在企業(yè)間的眾多合作伙伴的系統(tǒng)對接也將不再是無法完成的任務。目前現有的解決方案和產品的提供商有Bowstreet、Epicentric等。
Consumer-Oriented Web Service: 此類服務針對的是那些原先的B2C的網站的改造,為這些Browser-Oriented的Web應用增加(注意是增加)了Web服務的應用界面,使得第三方的桌面工具或其自身提供的增值的桌面工具能夠利用更優(yōu)秀的用戶界面提供跨越多個B2C服務的桌面服務。這將使得用戶使用Internet更為方便,能夠獲得更加便捷的服務。比如我們完全就可以在個人理財桌面系統(tǒng)中集成(調用)Internet上的股票價格查詢Web服務、機票預定Web服務等,使得個人理財應用的自動化程度更高。
Device-Oriented Web Service: 此類服務的使用終端一般是手持設備和日用家電,對于前者而言,可以在不用修改網絡服務的體系架構的前提下,令先前的網絡服務支持除PC以外的各種終端,比如Palm、PocketPC、手機等。如此,那些天氣預報服務、Email服務、主動信息服務等將更為有效和便捷。而后者對于日用家電,則可能是一個市場的啟動期,有了Web服務作為基礎框架,智能型的日用家電將真正獲得標準的支持,從而有了廣泛使用的可能。
System-Oriented Web Service: 一些傳統(tǒng)意義上的系統(tǒng)服務,比如用戶權限認證,系統(tǒng)監(jiān)控等,如果被遷移到全球范圍的Internet上,或者企業(yè)內部的intranet上,其作用范圍將從單個系統(tǒng)或局部網絡拓展到整個企業(yè)網絡或整個Internet。如此,基于同一系統(tǒng)服務的不同應用將得以在整個Internet環(huán)境中部署,譬如跨國企業(yè)的所有在線服務可以使用同一個用戶權限認證Web服務。
Web服務: 當今的技術最亮點
Figure 2. Web服務的當前發(fā)展狀況
以上這幅圖是Gartner
Group在研究了所有IT主流時尚技術的發(fā)展道路后,作出的抽象模型。Y軸表明技術的受關注程度,而X軸則表示技術的應用的成熟度。每一項技術在從出現到成熟的整個過程都將沿著圖中的曲線前進,而且典型地,都將被劃分為五個階段:
技術顯現:一門技術被發(fā)明或定義之后,開始進入公眾的視野;
不斷膨脹的期望期:由于該項技術的劃時代的突破,使人們對這項技術有著無比美好的想象和期望,這一階段類似"網絡的泡沫器";
希望破滅之后的醒悟期:由于每項技術都不是萬能的,真正獲得使用仍然需要務實的加以應用研究,因此此時人們發(fā)現這項技術似乎并沒有期望中那么有用,這一階段類似"網絡的泡沫破滅";
豁然開朗的應用發(fā)展期:經過了一個階段的開發(fā)和研究,該項技術終于走上了良性發(fā)展的軌道,越來越多的人接受并使用了該項技術;
大量的工業(yè)化生產期:該項技術成為業(yè)界主流,大量應用在具體的環(huán)境中。
參考資料
- Web Service 技術/評論網站
-
- UDDI-China.ORG,
以UDDI為主的Web服務技術網站。
- WebServices.ORG,
Web服務的綜合類技術網站。
- IBM
developerWorks/Web Service Zone, IBM的Web服務技術資源中心
- MSDN Online Web
Services Developer Resources, Microsoft的Web服務的開發(fā)者資源網站
- ITPapers/Web
Service, ITPapers的Web服務評論文章
- UDDI-China.ORG,
以UDDI為主的Web服務技術網站。
- 解決B2B電子商務應用交互和集成的InterOP Stack系列技術標準規(guī)范
-
- UDDI執(zhí)行白皮書,
UDDI-China.org, UDDI.org
- UDDI技術白皮書,
UDDI-China.org, UDDI.org
- UDDI程序員API規(guī)范,
UDDI-China.org, UDDI.org
- UDDI數據結構參考,
UDDI-China.org, UDDI.org
- Web
Service Description Language (WSDL) 1.0, IBM, 25 Sep 2000
- SOAP:
Simple Object Access Protocol Specification 1.1, IBM, Microsoft,
DevelopMentor, 2000
- Extensible Markup Language (XML) 1.0 (Second Edition), W3C, 6 Oct 2000
- UDDI執(zhí)行白皮書,
UDDI-China.org, UDDI.org
作者簡介
柴曉路: 上海得易電子商務技術有限公司(DealEasy)首席系統(tǒng)架構師、XML技術顧問。UDDI-China.org藍色火焰工作室(Blue Blaze Studio)成員。UDDI Advisor
Group成員,WSUI Working
Group成員。2000年獲復旦大學計算機科學碩士學位,曾在國際計算機科學學術會議(ICSC)、亞太區(qū)XML技術研討會(XML
Asia/Pacific'99)、中國XML技術研討會(北京)、計算機科學期刊等各類國際、國內重要會議與期刊上發(fā)表論文多篇。專長于基于XML的系統(tǒng)集成和數據交換的技術研究,同時對數據庫、面向對象技術及CSCW等技術比較擅長。
- 1Generating a Strongly-Typed DataSet from a Web Service
- 2KnowledgeManagement at Best Buy
- 3我國商貿業(yè)將迎來新一輪的IT建設高潮
- 4一個都不少——IBM提供的Web服務支持
- 5Web服務的(革)創(chuàng)新,第2部分
- 6Web Services. Part I: The Basics
- 7IBM石家莊OA信息化研究院網站
- 8知識發(fā)現與數據挖掘
- 9Web服務內幕,第2部分: W3C Web服務專題研討會的概述
- 10將應用程序的功能封裝成為Web Services
- 11端到端的挑戰(zhàn)者
- 12圖書館行業(yè)信息化建設現狀
- 13XML Web Services Security
- 14包裝你知道的一切
- 15Sharing information through the Lotus Knowledge Discovery Sy
- 16石家莊OA信息化的基本XML和RDF技術(三):語義知識
- 17XML Web Service 基礎
- 18Web服務內幕,第4部分:介紹Web服務流語言
- 19SOAP技術與B2B應用集成--SOAP消息中的類型/值的編序方法和示例
- 2021世紀企業(yè)文化發(fā)展的六大趨勢
- 21破解OA項目實施難題:建立項目實施與交付體系
- 22泛普軟件石家莊OA信息化實施階段劃分
- 23Web Service初探
- 24即插即用portlet
- 25一個副總裁的辭呈:癱瘓的信息化系統(tǒng)和人心
- 26OA辦公系統(tǒng)可以幫助企業(yè)擺脫束縛
- 27Accessing Server Variables From Within Web Services
- 28柴油機故障診斷專家系統(tǒng)知識庫設計
- 29Ask the DotNetJunkies: Consuming Remote Web Services in ASP.
- 30The DECOR Project:Workflow-Embedded Organizational Memory Ac
成都公司:成都市成華區(qū)建設南路160號1層9號
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓