當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普各地 > 浙江OA系統(tǒng) > 杭州OA系統(tǒng) > 杭州OA行業(yè)資訊
SOA:應(yīng)該使用BPEL還是ESB
申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
來(lái)源:泛普軟件 SOA:應(yīng)該使用BPEL還是ESB(一)在設(shè)計(jì)SOA解決方案時(shí),并不總是清楚應(yīng)該使用Web服務(wù)BPEL流程,還是應(yīng)使用 ESB中介流。本文將介紹幫助您決定使用哪一個(gè)的一些注意事項(xiàng)。
概述
在IBM? SOA參考體系結(jié)構(gòu)中(如圖 1 所示),服務(wù)被分組為多個(gè)功能區(qū),并通過(guò)企業(yè)服務(wù)總線(以下稱為ESB)進(jìn)行通信。在理想情況下,每個(gè)功能區(qū)(如流程服務(wù))都是“純”功能區(qū),為了實(shí)現(xiàn)關(guān)注點(diǎn)分離僅提供了一個(gè)服務(wù)類。
不過(guò),在現(xiàn)實(shí)世界中,存在重疊的任何產(chǎn)品集中通常都包含功能區(qū)。例如,WebSphere Process Server(以下稱為 Process Server)是在參考體系結(jié)構(gòu)中提供流程服務(wù)的軟件組件。它是從 WebSphere MQ Workflow、WebSphere Interchange Server 和 WebSphere Business Integration Server Foundation 發(fā)展而來(lái)的。為便于用戶升級(jí)前代產(chǎn)品,它包括了與舊產(chǎn)品中的功能等效的功能。例如,Interchange Server 包括了業(yè)務(wù)對(duì)象映射,該對(duì)象映射以接口映射形式存在于 Process Server 中。
可以映射流入或流出業(yè)務(wù)流程的業(yè)務(wù)對(duì)象。映射還是 ESB 中的主要功能之一。因此,如果您同時(shí)擁有 Process Server 和 ESB,則需要決定應(yīng)使用哪一個(gè)產(chǎn)品解決給定的業(yè)務(wù)問(wèn)題,原因是這些區(qū)域存在重疊。
還存在一些可能使用 Process Server 或 ESB 的其他用例。例如,假設(shè)需要使用兩階段提交調(diào)用三個(gè)現(xiàn)有服務(wù)。這稱為組合服務(wù)。在 ESB 中,您可以使用中介流調(diào)用這些服務(wù)。中介流是作為事務(wù)提交或回滾的。您可以使用 WS-BPEL 微流調(diào)用這三個(gè)服務(wù),同時(shí)提供事務(wù)性。這樣,可以使用這兩種產(chǎn)品作為解決方案。如何決定哪一種產(chǎn)品是正確的?
ESB 概述
ESB 是一種體系結(jié)構(gòu)模式,而不是軟件產(chǎn)品。不同的軟件產(chǎn)品可以構(gòu)成 ESB。在某些情況下,公司在不同的區(qū)域中使用多種產(chǎn)品,利用特定的功能來(lái)滿足其獨(dú)特的需求??梢詫⑦@些不同的產(chǎn)品聯(lián)合在一起實(shí)現(xiàn) ESB 模式。
概括地講,ESB 具有四個(gè)主要功能:
消息路由:將傳入消息發(fā)送到目的地,該目的地通過(guò)硬編碼方式連接的邏輯確定或基于內(nèi)容的動(dòng)態(tài)方式確定。路由是啟用服務(wù)虛擬化的關(guān)鍵功能。在調(diào)用方和服務(wù)之間建立中間層可以在調(diào)用方不知道更改的情況下移動(dòng)服務(wù)的位置。
###NextPa域e###
消息轉(zhuǎn)換:將傳入消息從一種格式轉(zhuǎn)換為另一種格式。例如,可以將逗號(hào)分隔的消息轉(zhuǎn)換為 SOAP,這樣可以將數(shù)據(jù)傳遞到 Web 服務(wù)。
協(xié)議中介:傳入消息使用不同的協(xié)議從發(fā)出位置發(fā)送。例如,傳入消息可以使用 HTTP,而傳出消息可以使用 WebSphere MQ。
事件處理:事件的傳入消息一般通過(guò)發(fā)布和訂閱模型分發(fā)給許多端點(diǎn)。
在給定的事務(wù)中,通常會(huì)合并這些主要高級(jí)功能。例如,傳入消息可能是一個(gè)使用 SOAP/HTTP 的 Web 服務(wù)調(diào)用,而目的地是需要使用 WebSphere MQ 的固定長(zhǎng)度消息格式的遺留系統(tǒng)。必須轉(zhuǎn)換消息、協(xié)調(diào)協(xié)議并且必須將消息路由到正確的位置。
對(duì) ESB 編程通常涉及虛擬環(huán)境,并將邏輯表示為稱為消息流或中介流的連接活動(dòng)流。這些流都是事務(wù)型的,使用的是兩階段提交之類的機(jī)制,這樣在失敗時(shí)可以回滾整個(gè)流,或者在成功時(shí)提交整個(gè)流。這些流是無(wú)狀態(tài)的;通常情況下是消息傳入,流對(duì)該消息執(zhí)行各種操作,然后發(fā)送傳出消息。
由于 ESB 的無(wú)狀態(tài)事務(wù)特性,因此高性能是前提條件。在大型組織中,ESB 每天處理數(shù)百萬(wàn)條消息的情況并不少見。
IBM 在 ESB 方面提供了多款軟件產(chǎn)品。WebSphere ESB 是基于 WebSphere Application Server Network Deployment 平臺(tái)構(gòu)建的。構(gòu)建它是為了支持 Web 服務(wù)、JMS 和 XML 之類的標(biāo)準(zhǔn)。WebSphere Message Broker(以下稱為 Message Broker)是一種非 J2EE 產(chǎn)品,它支持 WebSphere ESB 中的標(biāo)準(zhǔn)(如 Web 服務(wù)),以及許多基于非標(biāo)準(zhǔn)的協(xié)議和數(shù)據(jù)格式。WebSphere DataPower 是一種硬件工具,它可以飛速執(zhí)行 ESB 功能??傊?,這三種產(chǎn)品都可以用作 ESB 的基礎(chǔ)。
BPEL 概述
OASIS 標(biāo)準(zhǔn)組織已將 Business Process Execution Language (BPEL) 定義為基于標(biāo)準(zhǔn)的方法,使用該方法可以編排由服務(wù)構(gòu)成的業(yè)務(wù)流程。2007 年,WS-BPEL 2.0 被批準(zhǔn)為標(biāo)準(zhǔn)語(yǔ)言。作為一種執(zhí)行語(yǔ)言,WS-BPEL 定義了如何表示業(yè)務(wù)流程中的活動(dòng),以及流控制邏輯、數(shù)據(jù)、消息相關(guān)性和異常處理等。
IBM 的 WebSphere Process Server(以下稱為 Process Server)包括業(yè)務(wù)流編排器(即基于 WS-BPEL 的流引擎)。上一版本稱為 WebSphere Business Integration Server Foundation,該版本也包括 WS-BPEL 支持。
Process Server 包含多個(gè)主要功能,其中包括:
業(yè)務(wù)流程:流程可以是有狀態(tài)和長(zhǎng)時(shí)間運(yùn)行的,或者是事務(wù)型微流。長(zhǎng)時(shí)間運(yùn)行的流程無(wú)法像微流那樣回滾,IP,它們可以使用補(bǔ)償處理程序撤消先前執(zhí)行的活動(dòng)。流程可用于實(shí)現(xiàn)組合服務(wù)。
人工任務(wù):業(yè)務(wù)流程的一個(gè)關(guān)鍵部分是能夠?qū)⑷藛T引入該流程。人工任務(wù)管理器啟用一些步驟,通過(guò)這些步驟可以將人員作為一種服務(wù)來(lái)調(diào)用。工作流模式是使用 BPEL 擴(kuò)展通過(guò)外部(參與)任務(wù)或內(nèi)聯(lián)任務(wù)進(jìn)行支持的。
業(yè)務(wù)規(guī)則:集成的規(guī)則引擎允許創(chuàng)建和評(píng)估業(yè)務(wù)規(guī)則,而不是將決策硬編碼到業(yè)務(wù)流程。授權(quán)用戶可以使用 Web 瀏覽器更新該規(guī)則。管理員可以激活更新,并將其導(dǎo)出,因此開發(fā)環(huán)境可以與運(yùn)行時(shí)保持同步。
集成 ESB:Process Server 包括完整的 WebSphere ESB 產(chǎn)品。在本文中,我們只介紹 Process Server 的 BPEL 引擎組件。
SCA:Process Server 中的服務(wù)調(diào)用是使用服務(wù)組件體系結(jié)構(gòu) (SCA) 規(guī)范完成的。SCA 接口映射可用于調(diào)用其接口與調(diào)用組件不同的服務(wù)。接口映射也支持高級(jí)功能(如關(guān)系)。如果系統(tǒng) A 使用“123”作為客戶標(biāo)識(shí)符,而系統(tǒng) B 使用“ABC”作為客戶標(biāo)識(shí)符,則在這兩個(gè)系統(tǒng)之間轉(zhuǎn)換時(shí),您可以使用關(guān)系建立“123”到“ABC”的中介,反之亦然。
- 1BI概念絕不會(huì)因企業(yè)收購(gòu)而消亡
- 2淺談企業(yè)杭州OA應(yīng)用條件、風(fēng)險(xiǎn)及成功標(biāo)志
- 3IT運(yùn)維傳奇之你追我趕此起彼落
- 4變身“流程公司” 什么工作流合適
- 5五大建議助企業(yè)提高虛擬服務(wù)器安全
- 6計(jì)世獨(dú)家:互聯(lián)網(wǎng)公司漸成服務(wù)器大買家
- 7總結(jié)杭州OA之供應(yīng)商編碼的幾大必備技巧
- 8四巨頭角力BI市場(chǎng) 各亮“絕活”客戶評(píng)說(shuō)
- 9案例點(diǎn)評(píng):企業(yè)知識(shí)管理實(shí)施為何這么難
- 10計(jì)世獨(dú)家:步入全面信息管理時(shí)代?
- 11虛擬化應(yīng)用安全盲點(diǎn):網(wǎng)絡(luò)流量控制
- 12云OA軟件2014-2015年落地有戲
- 13解決SAP SRM產(chǎn)品帶來(lái)的困惑
- 14杭州OA實(shí)務(wù):評(píng)述銷售出貨調(diào)撥流程
- 15SOA分"大""小" 你如何選擇
- 16計(jì)世獨(dú)家:杭州OA項(xiàng)目招標(biāo)選型走穩(wěn)第一步
- 17通過(guò)SOA看企業(yè)轉(zhuǎn)變 注重理念指導(dǎo)
- 18財(cái)務(wù)信息化:如何做好預(yù)付帳款流程
- 19杭州OA五大不可控性 是否真的不可控
- 20簡(jiǎn)單管理公司OA辦公軟件的核心要義
- 21提高企業(yè)信息化ROI 風(fēng)險(xiǎn)管理全剖析
- 22成功實(shí)施杭州OA 八個(gè)建議不得不聽
- 23SaaS模式解決中小企業(yè)兩大難題
- 24深化應(yīng)用杭州OA 全面推動(dòng)企業(yè)跨越式發(fā)展
- 25虛擬倉(cāng)庫(kù)在廠外物料管理上的應(yīng)用
- 26產(chǎn)品生命周期管理應(yīng)用的四個(gè)層面分析
- 27電子商務(wù)“趕集” CIO淺談電子商務(wù)應(yīng)用
- 28基于SOA的體系架構(gòu)設(shè)計(jì)
- 29杭州OA與精益生產(chǎn)之間的平衡
- 30使用SaaS模式應(yīng)規(guī)避四大風(fēng)險(xiǎn)
成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓