Microsoft Biztalk 2004 vs IBM WebSphere Business Integration Server Foundation 5.1

最近有幸深入瞭解了一些 Biztalk 2004 和 WebSphere Integration Server Foundation 5.1 的內容,作爲兩大軟件廠商的兩大商業流程集成平臺,不仿做一下對比。

Biztalk 2004 以下簡稱爲 Biztalk,WebSphere Business Integration Server Foundation 5.1 簡稱 WBI-SF。

1、對於關鍵標準的支持

由於 WebServices 技術成爲將來 EAI、B2Bi 方案使用的一種主流技術,兩個平臺在此方面的支持均比較完善,可以在流程中很方便地調用 Web Service。

但對於 Web Service 的一個重要協議:BPEL4WS --- 商業流程執行語言,兩者支持的力度則不同。WebSphere 的流程編排(Choreograph)是以 BPEL4WS 爲基礎,增加了一定擴展。而 Biztalk 則更象是延用了 XLANG 的流程編排(Orchestration),而做了一些擴展以便能夠支持 BPEL4WS。

這個也可能與產品的發佈日期有關,Biztalk 2004 在研發中的時候,BPEL 1.1 的標準還沒未成形,而 WBI-SF 則是在 BPEL 1.1 成爲正式標準之後才發佈的。

2、應用接口與適配器(Adapter)

Biztalk 似乎在這個方面要具有優勢,這可能歸功於 Biztalk 產品歷史稍長,很早就有 Biztalk Framework、Adapter Framework,加上近幾年的不斷髮展,已經可以支持所有主流數據庫、基礎架構和產品(如 CORBA、EJB、MQ、EDI)、垂直行業標準(HIPAA,RosettaNet、FIX, SWIFT (Financial)),應用程序(Sibel CRM、SAP、J.D.Edwards、PeopleSoft),數量達到數百個,而 WBI-SF 則除了與自己的產品/技術(如CICS、Lotus等)具有接口外,其它的 Adapter 並不多。

3、開發難易程度

Biztalk 的開發並不是很容易的事情,需要了解端口、管道等諸多易另人混淆的東西,而且基本上是基於 XML 消息的處理,所以在流程的各個部分要經常做消息類型定義,消息轉換等。而 WBI-SF 中則更多是使用容易理解的變量的概念,類似於函數中的參數。兩者各有優缺點,基於變量(參數)易理解、容易開發,而基於消息較適合於完整的商業文檔轉換、 交換,並且能證可以保證其中數據的安全性。

在流程活動基本元素(如循環、分支、順序執行等)方面,Biztalk 支持較爲完善,而 WBI-SF 則只是在 BPEL4WS 的基本元素基礎上加入了有限擴展,不夠豐富。

在文檔轉換與映射(Maping)方面,Biztalk 提供了完備的設計界面和轉換函數,而 WBI-SF 只是提供了基本的映射功能。

4、開發工具支持

Microsoft 使用擴展後的 Visual Stuidio .NET 2003 做爲 Biztalk 應用的開發工具,IBM 則緊緊圍繞 Ecipse ,提供了一個類似於 WSAD 的 WebSphere Application Developer for Integration Edition(簡稱 WSAD-IE)來對 WBI-SF 應用開發提供支持。

就個人體會來說,在 WSAD-IE 中開發應用要比 VS.NET 中方便一些,目前在 VS.NET 中開發 Biztalk 應用還是很麻煩,需要安裝 Biztalk 開發版,開發工具中不支持調試,只能通過另外的一個工具來跟蹤調試。

在 WSAD-IE 中自帶有一個 WBI-SF 簡化版,所以不用另外安裝 WBI-SF ,而且可以直接在開發工具中進行流程調試,如設置斷點、單步執行等。

5、性能與效率

從理論上來說,Biztalk 的所有消息都要存儲到消息數據庫後再進行進一步處理,而 WBI-SF 則將商業流程分爲兩類:沒有人工參與的流程的短流程以及有人工參與的長流程(類似於傳統意義上的工作流),對於前者只在內存中進行處理,對於後者,則要存 儲到數據庫中後再進行處理。

很難說兩者那個的效率更好,Biztalk 都存儲在數據庫中,異步處理,很少會發生資源爭用、死鎖的情況,而且可靠性很高,而如果在內存中處理,併發量較小的時候可能會較快,但併發量大的時候,很可能會產生資源爭用,進而死鎖降低系統效率。

就開發工具來說,WSAD-IE 繼承了 WSAD 奇慢的速度,在 1G 的 Vmware Virtual Machine 中花了 1 分鐘時間才啓動完成,編譯部署時間也很長,在這方面,其與 Biztalk 和 VS.NET 的速度差異不是一兩倍,簡直是糟蹋了 Eclipse。

6、人力工作流支持

人力工作流(Human Workflow)主要指商業流程中需要人力參與,如審批、複覈等。在 WBI-SF 中對人力工作流有一定的支持,每個活動結點可以設置其類型爲 staff activities ,然後可以設置操作用戶、權限等,且有內建的、簡單的 Web 操作界面來完成在流程上定義的操作。

IBM 對於人力工作流更完整的支持體現在 WebSphere Interchange Server 4 (購自 CrossWorlds )中,估計這個東西以後會和 WBI-SF 進行整合。

Biztalk 本身的工作流特性較弱,只是提供了一些工作流基礎(基礎服務和接口等),具體的實現需要較多的二次開發,結合 SharePoint Services 和 InfoPath 等完成。

7、建模工具

Microsoft 提供了一個基於 Visio 的插件,可以由業務人員繪製商業處理流程圖,並可以導入到 VS.NET 中直接作爲 Biztalk Orchestration 基本框架來使用。

IBM 有一個名爲 WebSphere Business Integration Modeler 的單獨的建模工具,不知道是否是提供 WBI-SF 來使用的,此建模工具也構建在 Eclipse 的基礎上。

8、其它相關信息

雖然大家說 Biztalk 與 Infopath 的關係有如 Outlook 和 Exchange ,但在實際應用中,Infopath 要想利用 Biztalk 的功能,遠不如 Outlook 配置一個 Profile 就可以使用 MailBox 和 Public Folder 那樣簡單。

Biztalk 仍需要在 BPEL4WS、Human Workflow、開發支持等方面繼續進步。

IBM 在整合方面的工具很多,如 WebSphere Business Integration(不知道其與 WBI-SF 的關係如何,個人以爲 WBI-SF 是 WBI 的升級版本)、WBI MessageBroker、WBI Modeler、WBI Adapter Framework、WebSphere Interchange Server、WebSphere MQ Workflow、MQ Integrator 等,說實話,這麼多東西,實在很讓人 Confuse ,即然天天對外宣稱口號:整合應用( IBM 開發大會口號),何不把自己的整合產品先好好整合一下?或者至少給用戶一個明確的產品發展計劃以便於產品或技術選型/決策呀。

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章