【正文】
就可能會(huì)失控。這可幫助防止或隔離和診斷實(shí)時(shí)出現(xiàn)的問題,并能提供關(guān)于業(yè)務(wù)流程性能和瓶頸的反饋,以幫助進(jìn)行改進(jìn)。管理階段在此階段,將管理和監(jiān)視多個(gè)方面,如服務(wù)資產(chǎn)、服務(wù)可用性和響應(yīng)時(shí)間以及對(duì)服務(wù)的版本控制。部署階段在部署階段,可以配置運(yùn)行時(shí)環(huán)境來滿足所需的服務(wù)質(zhì)量級(jí)別和安全需求。 應(yīng)用程序等)將被包裝為服務(wù),并同時(shí)實(shí)現(xiàn)和測(cè)試需要但還不存在的功能。它還能確保設(shè)計(jì)滿足業(yè)務(wù)需求,并為以后測(cè)定性能提供基準(zhǔn)。圖 5. SOA 生命周期的四個(gè)階段下面將對(duì)此進(jìn)行詳細(xì)介紹:建模階段建模階段包括業(yè)務(wù)分析和需求收集,然后是對(duì)業(yè)務(wù)流程進(jìn)行建模和優(yōu)化。著名的 SOA 生命周期關(guān)系圖包括四個(gè)互連的六邊形圖(代表 SOA 的四個(gè)階段)。動(dòng)態(tài)生命周期即意味著可能持續(xù)地改進(jìn)流程,而這一點(diǎn)通過與 SOA 所采用的松散耦合相結(jié)合,可以讓流程像分解和重新組合構(gòu)建塊(這種情況下指服務(wù))一樣方便地進(jìn)行流程改進(jìn),而不用完全返工。微流僅在一個(gè)事務(wù)中運(yùn)行,持續(xù)時(shí)間短,而且僅由同步服務(wù)組成。 微流在沒有中斷的單個(gè)線程中運(yùn)行。長(zhǎng)時(shí)間運(yùn)行的流程存儲(chǔ)每個(gè)中間流程狀態(tài),以便獲得前向可 恢復(fù)性。根據(jù)經(jīng)驗(yàn),如果流 程包含人工任務(wù),則流程一定為長(zhǎng)時(shí)間運(yùn)行的流程。 長(zhǎng)時(shí)間運(yùn)行流程是可中斷的,也可以運(yùn)行于多個(gè)事務(wù)中。為了更為詳細(xì)地討論這個(gè)問題,讓我們先討論一下業(yè)務(wù)流程類型。這些任務(wù)不是自動(dòng)任務(wù),不過也同樣經(jīng)歷相同的分配和通知周期。與參與人工任務(wù)類似,這些任務(wù)以認(rèn)領(lǐng)并完成任務(wù)的其他人員為目標(biāo)。 圖 3. 發(fā)起任務(wù)成員和交互只要系統(tǒng)完成執(zhí)行,將會(huì)向發(fā)起人發(fā)送通知。 發(fā)起任務(wù):正如其名字所示,這些任務(wù)是由人員通過用戶界面啟動(dòng)的。例如,等待經(jīng)理審批的旅費(fèi)報(bào)帳流程就是這方面的一個(gè)例子。系統(tǒng)啟動(dòng)任務(wù),候選執(zhí)行者中某個(gè)人認(rèn)領(lǐng)任務(wù)并執(zhí)行。人工任務(wù)的類型有:人工任務(wù)業(yè)務(wù)編排也提供了對(duì)人工任務(wù) 的支持,人工任務(wù)是涉及到通過服務(wù)或其他人進(jìn)行的人工干預(yù)的組件。 活動(dòng),即流程內(nèi)的各個(gè)業(yè)務(wù)步驟。此類標(biāo)準(zhǔn)的兼容性讓流程能夠調(diào)用基于標(biāo)準(zhǔn)的開放基礎(chǔ)設(shè)施中的基礎(chǔ)服務(wù)和合作伙伴服務(wù)。為了描述業(yè)務(wù)流程,創(chuàng)建了一個(gè)新興標(biāo)準(zhǔn) BPEL4WS。流程和服務(wù)之間的關(guān)注分離提供了足夠的靈活性,能夠方便地更改流程,而不會(huì)對(duì)核心服務(wù)造成影響。什么是編排?它如何適應(yīng) SOA 大方略?業(yè)務(wù)服務(wù)編排考慮的是業(yè)務(wù)流邏輯的開發(fā)和執(zhí)行,與基礎(chǔ)服務(wù)和業(yè)務(wù)邏輯相獨(dú)立。Web 服務(wù)之所以是 SOA 的基礎(chǔ),是因?yàn)?Web 服務(wù):因?yàn)橐呀?jīng)有了支持技術(shù)來滿足需求,所以能幫助快速建立 SOA 并運(yùn)行。 支持中介,根據(jù)需要在不同各方之間形成請(qǐng)求/響應(yīng),而且不用更改其中任何一方 在分布式異類環(huán)境中操作,因?yàn)樗?o 支持同步和異步通信o 使用標(biāo)準(zhǔn)接口和標(biāo)準(zhǔn)協(xié)議 提供與 SOA 原則一致的集成基礎(chǔ)設(shè)施: o 強(qiáng)制使用獨(dú)立于實(shí)現(xiàn)的顯式接口來定義采用松散耦合的服務(wù)o 使用強(qiáng)調(diào)位置透明性和互操作性的通信協(xié)議o 促進(jìn)采用封裝可重用業(yè)務(wù)功能的方式定義服務(wù)從基礎(chǔ)的角度而言,它代表著能夠連接服務(wù)提供者和服務(wù)使用者的中樞和基礎(chǔ)架構(gòu)。 服務(wù)目錄:用于發(fā)布服務(wù)和為使用者列出可用服務(wù)的目錄。 服務(wù)提供者:發(fā)布了調(diào)用契約和位置的服務(wù)的提供者找到服務(wù)后,通過使用服務(wù)目錄中的可用信息,服務(wù)請(qǐng)求者能夠以正確的方式直接聯(lián)系服務(wù)提供者,從 而滿足業(yè)務(wù)需求。發(fā)布是通過將服務(wù)信息發(fā)布到服務(wù)目錄上來完成的。Web 服務(wù)實(shí)際上是最基本的 SOA 實(shí)現(xiàn)。應(yīng)用程序到應(yīng)用程序的消息傳遞在信息交換中使用。 概要遵從性測(cè)試工具基本 SOA 體系架構(gòu)接下來讓我們了解一些更為復(fù)雜的技術(shù)主題,如企業(yè)服務(wù)總線(Enterprise Service Bus,ESB)的角色、業(yè)務(wù)流程、其編排及 Web 服務(wù)的角色。 用于演示概要中的指導(dǎo)原則的用例和使用場(chǎng)景WSI 具有四個(gè)主要的可交付內(nèi)容:” 這個(gè)組織關(guān)注不同實(shí)現(xiàn)、平臺(tái)及其實(shí)際互操作性方面的 Web 服務(wù)標(biāo)準(zhǔn)開發(fā)。因?yàn)?BPEL 需要通用支持,因此該協(xié)議以廣泛認(rèn)可的 WSDL 協(xié)議為基礎(chǔ),而 WSDL 本身又是基于 XML 的。它還定義與合作伙伴的多個(gè)服務(wù)交互如何協(xié)調(diào)來實(shí)現(xiàn)業(yè)務(wù)目標(biāo),以及此協(xié)調(diào)所必要的狀態(tài)和邏輯。此協(xié)議設(shè)計(jì)為可擴(kuò)展協(xié)議。這些擴(kuò)展提供了用于將安全令牌與消息關(guān)聯(lián)的通用機(jī)制,從而替代了固 定的安全機(jī)制。接下來我們將給出一些 SOA 所利用的標(biāo)準(zhǔn)示例,了解標(biāo)準(zhǔn)如何幫助實(shí)現(xiàn) SOA 的承諾。對(duì)于 WSAtomicTransaction 協(xié)議,它使用 WSCoordination 框架提供用于業(yè)務(wù)活動(dòng)協(xié)調(diào)的兩個(gè)協(xié)議: o BusinessAgreementWithParticipantCompletion o BusinessAgreementWithCoordinatorCompletion標(biāo)準(zhǔn)在 SOA 中扮演什么角色?通常,SOA 項(xiàng)目與標(biāo)準(zhǔn)非常相關(guān),因?yàn)闃?biāo)準(zhǔn)能帶來以下好處,所以在其中對(duì)標(biāo)準(zhǔn)進(jìn)行了充分利用:它提供了可與 WSCoordination 框架結(jié)合使用的三種類型的協(xié)議,供兩階段提交 ACID 類型(支持原子性、一致性、隔離性和持久性的事務(wù))選擇使用: o 完成o 易失兩階段提交o 持久兩階段提交 此框架允許現(xiàn)有事務(wù)處理、工作流和其他要協(xié)調(diào)的系統(tǒng)隱藏其專用協(xié)議,從而在異類環(huán)境中協(xié)同工作。這包括:但隨著環(huán)境中服務(wù)數(shù)量的增加,對(duì)跨這些服務(wù)的事 務(wù)的需求就會(huì)增加。Web 服務(wù)具有 SOA 所需的自包含特性,但在涉及跨服務(wù)事務(wù)需求時(shí)就有些局限了。這是由于 SOA 上下文中長(zhǎng)時(shí)間運(yùn)行的流程中的服務(wù)的本質(zhì)所決定的,此類服務(wù)通常具有異步、無狀態(tài)、分布式和不透明的特點(diǎn)。這可以在以后幫助改進(jìn)流程。通過這些性 能度量還能確定流程改進(jìn)的潛在區(qū)域,最終(理想的情況下)實(shí)現(xiàn) SOA 承諾的改進(jìn)周期。 性能度量:表示流程有效性的屬性,用于確定是否滿足所需的性能。在身份證示例中,為申辦身份證的人創(chuàng)建新內(nèi)部文件的工作就是一個(gè)活動(dòng)。子流程具有與流程相同的組成元素。 子流程:流程中較小的流程或流程步驟。在身份證示例中,可能會(huì)出現(xiàn)關(guān)于最開始沒有提供需要包括的新文檔的事件。例如,某個(gè)指示信息。輸出代表業(yè)務(wù)目標(biāo)和業(yè)務(wù)所需的度量數(shù)據(jù)。 輸入:流程的活動(dòng)為了產(chǎn)生結(jié)果所需的信息。業(yè)務(wù)流程的組成元素從組成元素的角度定義業(yè)務(wù)流程的做法可能相對(duì)更好一些,這樣能從技術(shù)角度對(duì)業(yè)務(wù)流程有一些了解。業(yè)務(wù)流程代表業(yè)務(wù)抽象,同服務(wù)實(shí)現(xiàn)進(jìn)行了分 離,是關(guān)于業(yè)務(wù)流的流程。在 SOA 范式中,業(yè)務(wù)流程對(duì)服務(wù)流進(jìn)行控制。您提供您的出生證明、教育和專業(yè)證書及一張照片來啟動(dòng)流程。這一組活動(dòng)在業(yè)務(wù)流程中彼此協(xié)調(diào),一起描述并集成到一起。業(yè)務(wù)流程具有起點(diǎn)和終點(diǎn),是可重復(fù)的。什么是業(yè)務(wù)流程?業(yè)務(wù)流程 是在此環(huán)境中經(jīng)常聽到的一個(gè)術(shù)語(yǔ)。 可用服務(wù)及其接口的可見性可加快開發(fā)速度、提高應(yīng)用程序重用、改善治理和改進(jìn)業(yè)務(wù)規(guī)劃及管理。在本教程稍后,您將了解關(guān)于治理及其在 SOA 中的重要性。 服務(wù)注冊(cè)中心可以通過強(qiáng)制遵從訂閱服務(wù)來逐步過渡到治理服務(wù)的角色。他們可以隨后確定哪些服務(wù)可用于實(shí)現(xiàn)流程自動(dòng)化來應(yīng)對(duì)迫切的業(yè)務(wù)需求,哪些服務(wù)不能用于此目的,從而讓您知道需要在投資組合中實(shí)現(xiàn)和添加什么,并會(huì)提供可用服務(wù)目錄。通過保存服務(wù)端點(diǎn)位置,消除了在使用者和提供者之間進(jìn)行硬編碼所帶來的高度耦合。下面對(duì)其扮演的角色進(jìn)行了介紹:其中包含服務(wù)的物理位置、版本及服務(wù)有效期、服務(wù)文檔和策略。ebXML 定義了業(yè)務(wù)消息交換的標(biāo)準(zhǔn)方法,建立了公司間的貿(mào)易通信和注冊(cè)業(yè)務(wù)流程。o 消息的數(shù)據(jù)類型o 傳輸協(xié)議(如 HTTP 和 JMS)的綁定信息o 調(diào)用時(shí)使用的服務(wù)地址它指定服務(wù)的位置和服務(wù)向訪問此服務(wù)的個(gè)體公開的操作(或方法)。由于具有上述好處,SOAP 是推薦使用的 Web 服務(wù)通信協(xié)議,使用最為廣泛。o 可在 Internet 上使用。 SOAP:這是基于 XML 的簡(jiǎn)單協(xié)議,允許應(yīng)用程序通過 HTTP 等傳輸協(xié)議交換信息。 XML 本質(zhì)上具有簡(jiǎn)化表示形式、基于文本、靈活且可擴(kuò)展的好處。 通過使用 XML 解決了跨不同平臺(tái)使用不同應(yīng)用程序中不同數(shù)據(jù)格式的問題。這些標(biāo)準(zhǔn)利用了基于 XML 的表示形式的核心概念,此表示形式是受到全球廣泛支持的格式,能用于在 SOA 中的服務(wù)提供者和請(qǐng)求者之間進(jìn)行信息交換。由于以下這些原因,XML 是此基礎(chǔ)設(shè)施的核心:XML 在 SOA 中作出了什么貢獻(xiàn)?SOA 基于開放標(biāo)準(zhǔn),能夠促進(jìn)獨(dú)立于平臺(tái)的業(yè)務(wù)集成,但是需要公共平臺(tái)作為其基礎(chǔ)設(shè)施的基礎(chǔ)。這些服務(wù)還是在不假設(shè)誰將使用服務(wù)的情況下構(gòu)建的。 在 SOA 方法中,功能組織為一系列模塊化、可重用的共享服務(wù)。 松散耦合可提高在不影響服務(wù)使用者的情況下更改服務(wù)實(shí)現(xiàn)的靈活性。 它幫助在服務(wù)提供者和服務(wù)使用者之間形成一個(gè)抽象層。 如果交互中一方對(duì)特定方