版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
基礎教程介紹——什么是SOA?對于面向同步和異步應用的,基于請求/響應模式的分布式計算來說,SOA是一場革命。一個應用程序的業(yè)務邏輯(businesslogic)或某些單獨的功能被模塊化并作為服務呈現給消費者或客戶端。這些服務的關鍵是他們的松耦合特性。例如,服務的接口和實現相獨立。應用開發(fā)人員或者系統(tǒng)集成者可以通過組合一個或多個服務來構建應用,而無須理解服務的底層實現。舉例來說,一個服務可以用。NET或J2EE來實現,而使用該服務的應用程序可以在不同的平臺之上,使用的語言也可以不同。SOA有以下特性SOA服務具有平臺獨立的自我描述XML文檔。Web服務描述語言(WSDL,WebServicesDescriptionLanguage)是用于描述服務的標準語言。SOA服務用消息進行通信,該消息通常使用XMLSchema來定義(也叫做XSD,XMLSchemaDefinition)。消費者和提供者或消費者和服務之間的通信多見于不知道提供者的環(huán)境中。服務間的通訊也可以看作企業(yè)內部處理的關鍵商業(yè)文檔。在一個企業(yè)內部,SOA服務通過一個扮演目錄列表(directorylisting)角色的登記處(Registry)來進行維護。應用程序在登記處(Registry)尋找并調用某項服務。統(tǒng)一描述,定義和集成(UDDI,UniversalDescription,Definition,andIntegration)是服務登記的標準。每項SOA服務都有一個與之相關的服務品質(QoS,qualityofservice)。QoS的一些關鍵元素有安全需求(例如認證和授權),可靠通信(譯注:可靠消息是指,確保消息“僅且僅僅”發(fā)送一次,從而過濾重復信息。),以及誰能調用服務的策略。為什么選擇SOA?不同種類的操作系統(tǒng),應用軟件,系統(tǒng)軟件和應用基礎結構(applicationinfrastructure)相互交織,這便是IT企業(yè)的現狀。一些現存的應用程序被用來處理當前的業(yè)務流程(businessprocesses),因此從頭建立一個新的基礎環(huán)境是不可能的。企業(yè)應該能對業(yè)務的變化做出快速的反應,利用對現有的應用程序和應用基礎結構(applicationinfrastructure)的投資來解決新的業(yè)務需求,為客戶,商業(yè)伙伴以及供應商提供新的互動渠道,并呈現一個可以支持有機業(yè)務(organicbusiness)的構架。SOA憑借其松耦合的特性,使得企業(yè)可以按照模塊化的方式來添加新服務或更新現有服務,以解決新的業(yè)務需要,提供選擇從而可以通過不同的渠道提供服務,并可以把企業(yè)現有的或已有的應用作為服務,從而保護了現有的IT基礎建設投資。如圖1的例子所示,一個使用SOA的企業(yè),可以使用一組現有的應用來創(chuàng)建一個供應鏈復合應用(supplychaincompositeapplication),這些現有的應用通過標準接口來提供功能。Figure1.Supplychainapplication.Clickonthumbnailtoviewfull-sizedimage.服務架構為了實現SOA,企業(yè)需要一個服務架構,圖2顯示了一個例子:Figure2.Asampleservicearchitecture.Clickonthumbnailtoviewfull-sizedimage.在圖2中,服務消費者(serviceconsumer)可以通過發(fā)送消息來調用服務。這些消息由一個服務總線(servicebus)轉換后發(fā)送給適當的服務實現。這種服務架構可以提供一個業(yè)務規(guī)則引擎(businessrulesengine),該引擎容許業(yè)務規(guī)則被合并在一個服務里或多個服務里。這種架構也提供了一個服務管理基礎(servicemanagementinfrastructure),用來管理服務,類似審核,列表(billing),日志等功能。此外,該架構給企業(yè)提供了靈活的業(yè)務流程,更好地處理控制請求(regulatoryrequirement),例如SarbanesOxley(SOX),并且可以在不影響其他服務的情況下更改某項服務。SOA基礎結構要運行,管理SOA應用程序,企業(yè)需要SOA基礎,這是SOA平臺的一個部分。SOA基礎必須支持所有的相關標準,和需要的運行時容器。圖3所示的是一個典型的SOA基礎結構。接下來的章節(jié)將逐一討論該結構的每個部分。Figure3.AtypicalSOAinfrastructure.Clickonthumbnailtoviewfull-sizedimage.SOAP,WSDL,UDDIWSDL,UDDI和SOAP是SOA基礎的基礎部件。WSDL用來描述服務;UDDI用來注冊和查找服務;而SOAP,作為傳輸層,用來在消費者和服務提供者之間傳送消息。SOAP是Web服務的默認機制,其他的技術為可以服務實現其他類型的綁定。一個消費者可以在UDDI注冊表(registry)查找服務,取得服務的WSDL描述,然后通過SOAP來調用服務。WS-IBasicProfileWS-IBasicProfile,由Web服務互用性組織(WebServicesInteroperabilityOrganization)提供,是SOA服務測試與互用性所需要的核心構件。服務提供者可以使用BasicProfile測試程序來測試服務在不同平臺和技術上的互用性。J2EE和.Net盡管J2EE和。NET平臺是開發(fā)SOA應用程序常用的平臺,但SOA不僅限于此。像J2EE這類平臺,不僅為開發(fā)者自然而然地參與到SOA中來提供了一個平臺,還通過他們內在的特性,將可擴展性,可靠性,可用性以及性能引入了SOA世界。新的規(guī)范,例如JAXB(JavaAPIforXMLBinding),用于將XML文檔定位到Java類;JAXR(JavaAPIforXMLRegistry)用來規(guī)范對UDDI注冊表(registry)的操作;XML-RPC(JavaAPIforXML-basedRemoteProcedureCall)在J2EE1.4中用來調用遠程服務,這使得開發(fā)和部署可移植于標準J2EE容器的Web服務變得容易,與此同時,實現了跨平臺(如。NET)的服務互用。服務品質在企業(yè)中,關鍵任務系統(tǒng)(mission-criticalsystem,譯注:關鍵任務系統(tǒng)是指如果一個系統(tǒng)的可靠性對于一個組織是至關重要的,那么該系統(tǒng)就是該企業(yè)的關鍵任務系統(tǒng)。比如,電話系統(tǒng)對于一個電話促銷企業(yè)來說就是關鍵任務系統(tǒng),而文字處理系統(tǒng)就不那么關鍵了。)用來解決高級需求,例如安全性,可靠性,事物。當一個企業(yè)開始采用服務架構作為工具來進行開發(fā)和部署應用的時候,基本的Web服務規(guī)范,像WSDL,SOAP,以及UDDI就不能滿足這些高級需求。正如前面所提到的,這些需求也稱作服務品質(QoS,qualityofservices)。與QoS相關的眾多規(guī)范已經由一些標準化組織(standardsbodies)提出,像W3C(WorldWideWebConsortium)和OASIS(theOrganizationfortheAdvancementofStructuredInformationStandards)。下面的部分將會討論一些QoS服務和相關標準。安全Web服務安全規(guī)范用來保證消息的安全性。該規(guī)范主要包括認證交換,消息完整性和消息保密。該規(guī)范吸引人的地方在于它借助現有的安全標準,例如,SAML(asSecurityAssertionMarkupLanguage)來實現web服務消息的安全。OASIS正致力于Web服務安全規(guī)范的制定??煽吭诘湫偷腟OA環(huán)境中,服務消費者和服務提供者之間會有幾種不同的文檔在進行交換。具有諸如“僅且僅僅傳送一次”(once-and-only-oncedelivery),“最多傳送一次”(at-most-oncedelivery),“重復消息過濾”(duplicatemessageelimination),“保證消息傳送”(guaranteedmessagedelivery)等特性消息的發(fā)送和確認,在關鍵任務系統(tǒng)(mission-criticalsystems)中變得十分重要。WS-Reliability和WS-ReliableMessaging是兩個用來解決此類問題的標準。這些標準現在都由OASIS負責。策略服務提供者有時候會要求服務消費者與某種策略通信。比如,服務提供商可能會要求消費者提供Kerberos安全標示,才能取得某項服務。這些要求被定義為策略斷言(policyassertions)。一項策略可能會包含多個斷言。WS-Policy用來標準化服務消費者和服務提供者之間的策略通信??刂飘斊髽I(yè)著手于服務架構時,服務可以用來整合數據倉庫(silosofdata),應用程序,以及組件。整合應用意味著例如異步通信,并行處理,數據轉換,以及校正等進程請求必須被標準化。在SOA中,進程是使用一組離散的服務創(chuàng)建的。BPEL4WS或者WSBPEL(WebServiceBusinessProcessExecutionLanguage)是用來控制這些服務的語言。WSBPEL目前也由OASIS負責。管理隨著企業(yè)服務的增長,所使用的服務和業(yè)務進程的數量也隨之增加,一個用來讓系統(tǒng)管理員管理所有運行在多相環(huán)境下的服務的管理系統(tǒng)就顯得尤為重要。WSDM(WebServicesforDistributedManagement)規(guī)定了任何根據WSDM實現的服務都可以由一個WSDM適應(WSDM-compliant)的管理方案來管理。其它的qos特性,比如合作方之間的溝通和通訊,多個服務之間的事務處理,都在WS-Coordination和WS-Transaction標準中描述,這些都是OASIS的工作。SOA不是Web服務在理解SOA和Web服務的關系上,經常發(fā)生混淆。根據2003年4月的Gartner報道,YefimV.Natis就這個問題是這樣解釋的:“Web服務是技術規(guī)范,而SOA是設計原則。特別是Web服務中的WSDL,是一個SOA配套的接口定義標準:這是Web服務和SOA的根本聯系。”從本質上來說,SOA是一種架構模式,而Web服務是利用一組標準實現的服務。Web服務是實現SOA的方式之一。用Web服務來實現SOA的好處是你可以實現一個中立平臺,來獲得服務,而且隨著越來越多的軟件商支持越來越多的Web服務規(guī)范,你會取得更好的通用性。SOA的優(yōu)勢SOA的概念并非什么新東西,SOA不同于現有的分布式技術之處在于大多數軟件商接受它并有可以實現SOA的平臺或應用程序。SOA伴隨著無處不在的標準,為企業(yè)的現有資產或投資帶來了更好的重用性。SOA能夠在最新的和現有的應用之上創(chuàng)建應用;SOA能夠使客戶或服務消費者免予服務實現的改變所帶來的影響;SOA能夠升級單個服務或服務消費者而無需重寫整個應用,也無需保留已經不再適用于新需求的現有系統(tǒng)??偠灾?,SOA以借助現有的應用來組合產生新服務的敏捷方式,提供給企業(yè)更好的靈活性來構建應用程序和業(yè)務流程。AbouttheauthorRaghuR.KodaliisconsultingproductmanagerandSOAevangelistforOracleApplicationServer.Kodalileadsnext-generationSOAinitiativesandJ2EEfeaturesetsforOracleApplicationServer,withparticularexpertiseinEJB,J2EEdeployment,Webservices,andBPEL.Priortoproductmanagement,KodaliheldpresalesandtechnicalmarketingpositionsinOracleAsia-Pac
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025【合同范本】運輸公司合同范本
- 2025勞動合同中英對照
- 2025學校游泳池承包合同范文
- 2025雙因素理論在醫(yī)院合同制護士隊伍建設中的應用
- 2025器械配置買賣合同書
- 跨領域學習的心態(tài)調整與興趣培養(yǎng)
- 二零二五年度建筑工程承攬合同與綠色施工技術培訓協議4篇
- 二零二五年度船舶船員勞務合同(遠洋航行專項)3篇
- 工業(yè)安全安全生產托管服務合同范本解析考核試卷
- 個人勞務合同協議書
- 廣東省茂名市電白區(qū)2024-2025學年七年級上學期期末質量監(jiān)測生物學試卷(含答案)
- 2024版?zhèn)€人私有房屋購買合同
- 2024爆炸物運輸安全保障協議版B版
- 2025年度軍人軍事秘密保護保密協議與信息安全風險評估合同3篇
- 《食品與食品》課件
- 讀書分享會《白夜行》
- 光伏工程施工組織設計
- DB4101-T 121-2024 類家庭社會工作服務規(guī)范
- 化學纖維的鑒別與測試方法考核試卷
- 2024-2025學年全國中學生天文知識競賽考試題庫(含答案)
- 自動駕駛汽車道路交通安全性探討研究論文
評論
0/150
提交評論