版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
面向服務(wù)的架構(gòu)(SOA)
什么是SOA為什么要使用SOASOA工作原理構(gòu)建SOASOA的應(yīng)用目錄什么是SOA
面向服務(wù)的體系結(jié)構(gòu)(Service-OrientedArchitecture,SOA)是一個(gè)組件模型。組件模型它將應(yīng)用程序的不同功能單元(稱為服務(wù))通過這些服務(wù)之間定義良好的接口和契約聯(lián)系起來;接口是采用中立的方式進(jìn)行定義的,它應(yīng)該獨(dú)立于實(shí)現(xiàn)服務(wù)的硬件平臺(tái)、操作系統(tǒng)和編程語言;構(gòu)建在各種這樣的系統(tǒng)中的服務(wù)可以一種統(tǒng)一和通用的方式進(jìn)行交互。 Webservice平臺(tái)是一套標(biāo)準(zhǔn),它定義了應(yīng)用程序如何在Web上實(shí)現(xiàn)互操作性。你可以用任何你喜歡的語言,在任何你喜歡的平臺(tái)上寫Webservice,只要我們可以通過Webservice標(biāo)準(zhǔn)對這些服務(wù)進(jìn)行查詢和訪問。
Webservice是技術(shù)規(guī)范,SOA是設(shè)計(jì)原則。從本質(zhì)上講,SOA是一種架構(gòu)模式,而webservice是利用一組標(biāo)準(zhǔn)實(shí)現(xiàn)的服務(wù)。Webservice是實(shí)現(xiàn)SOA的方式之一。用webservice實(shí)現(xiàn)SOA的好處是:可以實(shí)現(xiàn)一個(gè)中立平臺(tái),來獲取服務(wù),獲取更好的通用性。WebServices的目標(biāo)是即時(shí)裝配、松散耦合以及自動(dòng)集成。Webservice為什么要使用SOA
傳統(tǒng)的架構(gòu),軟件包是被編寫為獨(dú)立的(self-contained)軟件,即在一個(gè)完整的軟件包中將許多應(yīng)用程序功能整合在一起。實(shí)現(xiàn)整合應(yīng)用程序功能的代碼通常與功能本身的代碼混合在一起。我們將這種方式稱作軟件設(shè)計(jì)“單一應(yīng)用程序“。與此密切相關(guān)的是,更改一部分代碼將對使用該代碼的代碼具有重大影響,這會(huì)造成系統(tǒng)的復(fù)雜性,并增加維護(hù)系統(tǒng)的成本。而且還使重新使用應(yīng)用程序功能變得較困難,因?yàn)檫@些功能不是為了重新使用而打的包。 缺點(diǎn):代碼冗余不能重用緊耦合成本高
SOA旨在將單個(gè)應(yīng)用程序功能彼此分開,以便這些功能可以單獨(dú)用作單個(gè)的應(yīng)用程序功能或“組件”。這些組件可以用于在企業(yè)內(nèi)部創(chuàng)建各種其他的應(yīng)用程序,或者如有需要,對外向合作伙伴公開,以便用于合作伙伴的應(yīng)用程序。SOA優(yōu)點(diǎn):代碼重用松耦合平臺(tái)獨(dú)立語言無關(guān)為什么要使用SOA商品消費(fèi)——軟件服務(wù)SOA工作流程 SOA架構(gòu)中有三種角色:服務(wù)提供者:發(fā)布自己的服務(wù),并且對服務(wù)請求進(jìn)行響應(yīng)。服務(wù)注冊中心:注冊已經(jīng)發(fā)布的webservice,對其進(jìn)行分類,并提供搜索服務(wù)。服務(wù)請求者:利用服務(wù)中心查找所需要的服務(wù),然后使用該服務(wù)。
SOA角色SOA操操作作SOA的的三三種種操操作作::發(fā)布布操操作作::為為了了使使服服務(wù)務(wù)可可訪訪問問,,需需要要發(fā)發(fā)布布服服務(wù)務(wù)描描述述以以使使服服務(wù)務(wù)使使用用者者可可以以發(fā)發(fā)現(xiàn)現(xiàn)它它。。查找找操操作作::服服務(wù)務(wù)請請求求者者定定位位服服務(wù)務(wù),,方方法法是是查查詢詢服服務(wù)務(wù)注注冊冊中中心心來來找找到到滿滿足足其其標(biāo)標(biāo)準(zhǔn)準(zhǔn)的的服服務(wù)務(wù)。。綁定定操操作作::在在檢檢索索到到服服務(wù)務(wù)描描述述之之后后,,服服務(wù)務(wù)使使用用者者繼繼續(xù)續(xù)根根據(jù)據(jù)服服務(wù)務(wù)描描述述中中的的信信息息來來調(diào)調(diào)用用服服務(wù)務(wù)。。SOAP:簡簡單單對對象象訪訪問問協(xié)協(xié)議議(SimpleObjectAccessProtocol)WSDL:Web服服務(wù)務(wù)描描述述語語言言WSDL(WebServicesDescriptionLanguage)UUDI:統(tǒng)統(tǒng)一一描描述述、、發(fā)發(fā)現(xiàn)現(xiàn)和和集集成成(UniversalDescription,DiscoveryandIntegration)WSDL用用來來描描述述服服務(wù)務(wù);;UDDI用用來來注注冊冊和和查查找找服服務(wù)務(wù);;而而SOAP,,作作為為傳傳輸輸層層,,用用來來在在消消費(fèi)費(fèi)者者和和服服務(wù)務(wù)提提供供者者之之間間傳傳送送消息息。。一一個(gè)個(gè)消消費(fèi)費(fèi)者者可可以以在在UDDI注注冊冊表表((registry))查查找找服服務(wù),,取取得得服服務(wù)務(wù)的的WSDL描描述述,,然然后后通通過過SOAP來來調(diào)調(diào)用用服服務(wù)務(wù)。。SOA的的相相關(guān)關(guān)標(biāo)標(biāo)準(zhǔn)準(zhǔn)————WSDL、、UUDI、、SOAP一個(gè)個(gè)SOA系系統(tǒng)統(tǒng)要要具具有有以以下下六六大大關(guān)關(guān)鍵鍵要要素素————基基礎(chǔ)礎(chǔ)設(shè)設(shè)施、、已已有有資資源源、、企企業(yè)業(yè)服服務(wù)務(wù)、、流流程程模模型型、、服服務(wù)務(wù)展展現(xiàn)現(xiàn)和和系系統(tǒng)統(tǒng)工具具((包包括括開開發(fā)發(fā)、、測測試試和和管管理理工工具具等等))。。因因此此,,在在基基礎(chǔ)礎(chǔ)設(shè)施施和和已已有有資資源源都都已已具具備備的的基基礎(chǔ)礎(chǔ)上上,,開開發(fā)發(fā)和和構(gòu)構(gòu)建建一一個(gè)個(gè)SOA系系統(tǒng)統(tǒng)要要包包括括以以下下幾幾方方面面的的工工作作::首先先需需要要設(shè)設(shè)計(jì)計(jì)開開發(fā)發(fā)出出符符合合標(biāo)標(biāo)準(zhǔn)準(zhǔn)的的服服務(wù)務(wù),,這這是是整整個(gè)個(gè)SOA系系統(tǒng)統(tǒng)最最核核心心的的要要素素。?;谟跇?biāo)標(biāo)準(zhǔn)準(zhǔn)服服務(wù)務(wù),,借借助助流流程程編編排排工工具具和和建建模模工工具具,,組組織織構(gòu)構(gòu)造造流流程程,,生生成成流流程程模模型型,,更更好好地地滿滿足足業(yè)業(yè)務(wù)務(wù)需需求求。。實(shí)際際構(gòu)構(gòu)建建和和開開發(fā)發(fā)SOA系系統(tǒng)統(tǒng),,具具體體包包括括服服務(wù)務(wù)和和應(yīng)應(yīng)用用程程序序的的開開發(fā)發(fā),,數(shù)數(shù)據(jù)據(jù)的的訪訪問問、、處處理理和和管管理理,,及及對對服服務(wù)務(wù)各各種種形形式式的的展展現(xiàn)現(xiàn)等等。。如何何構(gòu)構(gòu)建建SOA假設(shè)設(shè)股股票票行行業(yè)業(yè)存存在在以以下下6個(gè)個(gè)服服務(wù)務(wù)::Country(())輸入入?yún)?shù)數(shù)::國國家家編編碼碼。。輸輸出出項(xiàng)項(xiàng)::國國家家名名稱稱和和其其他他信信息息。。YellowPages(())輸入入?yún)?shù)數(shù)::公公司司名名稱稱;;輸輸出出項(xiàng)項(xiàng)::企企業(yè)業(yè)代代碼碼,,所所在在國國家家等等其其他他信信息息。。NewYorkStock(())輸入入?yún)?shù)數(shù)::公公司司代代碼碼,,時(shí)時(shí)間間;;輸輸出出項(xiàng)項(xiàng)::該該公公司司在在紐紐約約的的股股票票價(jià)價(jià)格格(美美元元))。。LondonStock(())輸入入?yún)?shù)數(shù)::公公司司代代碼碼,,時(shí)時(shí)間間;;輸輸出出項(xiàng)項(xiàng)::該該公公司司在在倫倫敦敦的的股股票票價(jià)價(jià)格格。。USToRMB(())輸入入?yún)?shù)數(shù)::美美元元價(jià)價(jià)格格,,時(shí)時(shí)間間;;輸輸出出項(xiàng)項(xiàng)::對對應(yīng)應(yīng)的的人人民民幣幣價(jià)價(jià)格格。。UKToRMB(())輸入入?yún)?shù)數(shù)::英英鎊鎊價(jià)價(jià)格格,,時(shí)時(shí)間間;;輸輸出出項(xiàng)項(xiàng)::對對應(yīng)應(yīng)的的人人民民幣幣價(jià)價(jià)格格。。使用SOA進(jìn)行行服務(wù)組組合實(shí)例例用戶想通通過“跨跨國公司司名稱””和“時(shí)時(shí)間”找找出該跨國公司司在紐約約的股票票折合成成人民幣幣的價(jià)格格以及該公司司所在國國家的信信息。分析:輸入?yún)?shù)數(shù):跨國國公司的的名稱、、時(shí)間如何實(shí)現(xiàn)現(xiàn)對給定定服務(wù)的的組合,,找出滿滿足用戶戶的信息?使用SOA進(jìn)行行服務(wù)組組合實(shí)例例使用SOA進(jìn)行行服務(wù)組組合實(shí)例例查詢過程程流程圖圖在石油企企業(yè)內(nèi)部部,有許許多不同同的網(wǎng)站站,進(jìn)入入每個(gè)網(wǎng)網(wǎng)站,都需需要身份份驗(yàn)證,,不僅浪浪費(fèi)時(shí)間間而且容容易遺忘忘代碼,另另外,網(wǎng)網(wǎng)站維護(hù)護(hù)人員對對各種服服務(wù)需要要建立相相應(yīng)的用用戶認(rèn)證與與信息管管理系統(tǒng)統(tǒng),分布布于個(gè)服服務(wù)器中中的用戶戶數(shù)據(jù)不僅浪費(fèi)費(fèi)維護(hù)人人員的時(shí)時(shí)間,而而且過于于分散的的用戶數(shù)數(shù)據(jù)不利于統(tǒng)計(jì)計(jì)和管理理。用戶戶的需求求和管理理要求促促使用戶戶趨于統(tǒng)一,產(chǎn)產(chǎn)生了統(tǒng)統(tǒng)一者認(rèn)認(rèn)證。統(tǒng)一認(rèn)證證的實(shí)現(xiàn)現(xiàn)是基于于SOA的架構(gòu)構(gòu)。SOA應(yīng)應(yīng)用———統(tǒng)一認(rèn)認(rèn)證從中可以以看出使使用SOA的優(yōu)優(yōu)點(diǎn):將將身份驗(yàn)驗(yàn)證這一一功能模模塊發(fā)布布成一種種服務(wù),,其他的的軟件可可以通過過UUDI查找找該服務(wù)務(wù),然后后將該服服務(wù)與服服務(wù)的實(shí)實(shí)現(xiàn)進(jìn)行行綁定。。SOA應(yīng)應(yīng)用———統(tǒng)一認(rèn)認(rèn)證SOA應(yīng)應(yīng)用———HOTI架構(gòu)構(gòu)圖HOTI———應(yīng)用架架構(gòu)流向向圖——登錄服務(wù)務(wù)的實(shí)現(xiàn)現(xiàn)Service端(服服務(wù)提供供者)::編寫服服務(wù)的實(shí)實(shí)AuthorityBLH,,它實(shí)實(shí)現(xiàn)了BaseBLH,該服服務(wù)的每每一種操操作在該該類中都都有一個(gè)個(gè)對應(yīng)的的方法,,針對不不同的操操作名稱稱,調(diào)用用相應(yīng)的的方法。。它是一一個(gè)業(yè)務(wù)務(wù)邏輯處處理,與與數(shù)據(jù)層層通信,,完成相相應(yīng)的數(shù)數(shù)據(jù)操作作。Servicemanager服務(wù)務(wù)的注冊冊與管理理。服務(wù)務(wù)的實(shí)現(xiàn)現(xiàn)完成以以后,要要為服務(wù)務(wù)定義服服務(wù)名和和操作名名。例如如登錄組組件的serviceName="Auhtority_Mgr"operationName=“query_AuthoritysWithUserID””。然后向向ServiceManager進(jìn)進(jìn)行注冊冊。每一一種服務(wù)務(wù)都對應(yīng)應(yīng)一個(gè)業(yè)業(yè)務(wù)邏輯輯處理XXXBLH。。HOTI的服務(wù)務(wù)調(diào)用客戶端((服務(wù)請請求者)):當(dāng)用用戶點(diǎn)擊擊登錄時(shí)時(shí),想要要調(diào)用sevice端端的服務(wù)務(wù)。必須須在配置置文件中中給出服服務(wù)的名名稱和操操作名稱稱。<serviceCallserviceName="Auhtority_Mgr"operationName=“query_AuthoritysWithUserID””/>。Soap代理根根據(jù)用戶戶的請求求,將請請求的消消息轉(zhuǎn)換換成soap消消息格式式,創(chuàng)建建連接,,與服務(wù)務(wù)端進(jìn)行行通信。。Service端的soap引擎監(jiān)監(jiān)聽到請請求,從從soap消息息中取出出服務(wù)名名和操作作名。通通過servicemanager找到該該服務(wù)對對應(yīng)的業(yè)業(yè)務(wù)邏輯輯處理XXXBLH,,然后執(zhí)執(zhí)行該業(yè)業(yè)務(wù)邏輯輯,將返返回的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國三九蛋白肽市場調(diào)查研究報(bào)告
- 古建筑門窗修復(fù)合同模板
- 銀行網(wǎng)點(diǎn)裝修合同協(xié)議
- 足療館裝修保密合同
- 2025年演出電話營銷合同范本
- 2025年程控交換機(jī)電纜項(xiàng)目可行性研究報(bào)告
- 2024年教育項(xiàng)目合作開發(fā)合同
- 2018-2024年中國次高端白酒市場深度評估及投資方向研究報(bào)告
- 2025-2030年中國PS管項(xiàng)目投資可行性研究分析報(bào)告
- 2025年家居合金擺件行業(yè)深度研究分析報(bào)告
- 運(yùn)動(dòng)技能學(xué)習(xí)與控制課件第五章運(yùn)動(dòng)中的中樞控制
- 財(cái)務(wù)部規(guī)范化管理 流程圖
- 蘇教版2023年小學(xué)四年級數(shù)學(xué)下冊教學(xué)計(jì)劃+教學(xué)進(jìn)度表
- 小學(xué)作文指導(dǎo)《難忘的一件事》課件
- 斷絕關(guān)系協(xié)議書范文參考(5篇)
- 量子力學(xué)課件1-2章-波函數(shù)-定態(tài)薛定諤方程
- 最新變態(tài)心理學(xué)課件
- 工程洽商記錄表格
- 【自考練習(xí)題】石家莊學(xué)院概率論與數(shù)理統(tǒng)計(jì)真題匯總(附答案解析)
- 農(nóng)村集體“三資”管理流程圖
- 高中英語 牛津譯林版必修第三冊 Unit 2詞匯全解
評論
0/150
提交評論