盡管SOA的風潮已經鼓蕩了幾年,但在新業務層出不窮、舊系統之間的聯系盤根錯節的IT環境之下,許多CIO不得不先忙著應對集成的難題,并希望把面向未來的SOA也一起解決,ESB(企業服務總線)為此提供了一條兼收并蓄之道。在眾軟件廠商高舉SOA大旗展開競爭之際,ESB成為競爭的前沿。
Forrester研究公司將ESB(企業服務總線)技術描寫成“通過起到中間件的中間層作用而實現面向服務架構(SOA)的軟件基礎設施,通過這樣的中間件,就能廣泛利用一套可重復使用的商業服務?!弊罱?,ESB不僅需要支持異構環境中的服務、消息,以及基于事件的交互,還被認為具有適當的服務級別和可管理性。
在近一段時期,多家軟件廠商都加大了對ESB產品的投入力度,并聲稱自己的SOA解決方案因此而更加完善,在SOA的賽跑中,ESB是競爭的前沿。
ESB讓SOA落地
以Cape Clear、Sonic、IONA為代表的ESB領域專門廠商的出擊,以增量式部署SOA為口號,強調以一種低廉的、基于標準的Web服務編排工具,并在此之上構建健壯的SOA。而SOA平臺廠商紛紛反攻,正在向原有的套件產品中添加ESB和IT治理功能。甲骨文公司去年還只是把ESB產品內嵌在其業務流程管理產品中,今年已經推出了獨立的ESB產品。BEA推出了 AquaLogic Service Bus、BEA AquaLogic Data Services Platform來加強ESB的產品線。IBM在原有WBI Message Broker、WAS 6 SIBus這些集成產品之外,又推出了獨立的WebSphere ESB產品。而傳統的EAI廠商Tibco和WebMethods也宣布了各自的ESB產品。
眾廠商之所以都看準了ESB這塊蛋糕,還得益于SOA理念與現實應用環境的差距。
SOA的風潮在軟件行業內鋪天蓋地,連一些硬件廠商都忍不住參與其中,如果解決方案不提SOA就好像落了伍。但在實際應用中,SOA的實施依然不怎么起勁。因為對許多用戶來說,SOA目前還是空中樓閣。大談按照SOA的理念重建應用系統,這種理想狀況相信每個人都不會反對,但現實中這樣的事情太少,企業的CIO大多面臨一件事,就是處理好目前應用系統的運行—集成就自然而然成為最容易切入的話題,由集成開始而賦予應用系統以SOA的靈魂,才確有其現實意義。ESB的冒頭也就由此產生,它與EAI(企業應用集成)密不可分,同樣是集成,ESB所提倡的集成與EAI的集成既有相同點,也有不同之處?!癊SB的意義在于讓SOA有了一個可實現的基礎設施?!盜ONA公司大中國區高級架構師陸飛舟這樣認為。他說:“ESB與EAI的主要目的是相同的,但是ESB更具開放性,尤其是對Web服務的支持,使得它成為實現SOA的基礎設施?!?
BEA公司中國區技術經理劉汩春認為:“SOA的‘服務’不僅僅是可重用,而且必須是可組裝編排; 可快速注冊發布; 質量可監控;生命周期可管理的。這樣SOA才能在整個IT范圍內實現服務治理和優化,從而直接推動業務的優化。而從簡單的服務重用框架到SOA演進的過程中,ESB就是其中最重要的催化劑之一?!?
作為國內中間件領域的后起之秀,中和威公司在2005年發布了其最新的ESB產品,該公司的總經理王志偉說:“SOA是一種架構上的創新,但其中的技術并沒有創新,ESB明確了中間件的細分層次?!?
無論SOA的理念有多么吸引人,終究不能紙上談兵,ESB的成熟讓SOA有了一個可以落地的依托。
豎井之惑
盡管軟件廠商對ESB表現出很強的關注,并投入了大量的力量,在對ESB的作用并非只有一種聲音。有一些人將ESB視為過時的EAI—感到它們藐視SOA的開放本質。在今年InfoWorld的一期報道中,介紹了Burton Group分析師Anne Thomas Manes的觀點。她說:“EAI與SOA完全不同。EAI是為了在業務流程豎井上架一座橋梁,而SOA是為了推倒這些豎井?!彼龑κ褂肊SB配置服務或將細粒度的服務編排為可廣泛訪問的粗顆粒的服務沒有疑問。但她十分不滿地批評總線作為連接所有服務網關的概念,尤其當轉換到ESB消息傳輸和從ESB消息傳輸轉換造成額外的開銷時。一種替代ESB方式的選擇是使用XML專用設備(也即所謂的網關)來傳送消息、處理轉換和映射,以及代理服務,使它們可以被有效地管理和保護。
記者就這一對ESB的質疑詢問了幾個廠家的專家。甲骨文公司大中華區SOA技術推廣經理周有衡說:“如果在純粹的SOA世界里,每一個應用都通過BPM(業務流程管理)編排來實現,流程之間也需要傳輸,系統內也存在著數據交換的需要,中間狀態也需要保存,如果系統內有交互的需要,就應該有總線,只不過這個總線可以是網絡的,而不是單一的,在現實的應用環境中,總線更是不可少的?!?
陸飛舟認為:即使企業完全按照SOA的理念劃分模塊,但以后出現了新業務也會產生連接與交換的問題,而且企業外部的系統如果沒有實現SOA,那么跨企業的系統之間仍然需要總線來連接。
Burton Group分析師Anne Thomas Manes的看法其實是把ESB與EAI的技術機制混為一談。東方通公司首席軟件架構師、SOA-RA-TF主席朱律瑋告訴記者:“EAI最早的技術機制是點對點的集成,而后來更成熟和被業界所接受的是Hub-Broker機制,即EAI 軟件創建了一個交換中心,用于轉換不同應用程序間的數據和消息。EAI 交換中心使用這些適配程序將所有進入數據的格式重新轉換為一種 EAI 交換中心內部和外部適配程序都可以理解的通用格式,并將其稱為規范格式?!?
在Hub-Broker機制之下的中心總線確實有可能成為系統的瓶頸,并造成額外的系統開銷,或者用戶必須購買更強大的硬件設備來保證總線的效率。但在ESB的天空下,EAI的Hub-Broker機制已經煙消云散,代之以更靈活、輕便的結構。
朱律瑋說:“ESB的總線方式可以是多樣的。例如,總線可以是一個網絡,而不是一個中心Hub,甚至還可以直接通過點對點的方式。多樣的方式是為了減少總線的壓力,具體的形式可以很靈活?!?
劉汩春的看法更為直接,他說:“信息系統中豎井的存在是必然的,因為企業中本來就有著不同的部門,每個部門有不同的業務系統,豎井不一定是貶義的,豎井太多才會有問題,只要企業內和企業外有跨系統的應用存在,總線就有其生命力所在?!?/p>
超越EAI
ESB在開放性上的進步,使其在EAI的基礎上又進一步,在秉承EAI集成的理念之上,ESB能夠做到面向SOA的集成。
王志偉說:“在SOA之下,ESB具有了透明化與標準化的特點。例如,今天你用了一家廠商的ESB產品,如果以后你覺得不好,還可以用其他廠商的ESB產品代替,而不會影響ESB上層應用和下層的數據庫和操作系統?!?br>
劉汩春說:“如果具體的把ESB產品和傳統EAI里面的消息總線類產品做個比較,兩者差異就很大了,主要有三方面。第一,ESB以SOA面向業務的哲學為基礎,所以它主要是通過配置來建立,而不是通過編程建立;第二,ESB必須有能力在不同的協議之間建立互通機制,包括傳統的消息機制和Web服務接口;第三,除了消息(服務)代理方式外,ESB還必須為SOA服務治理提供服務的生命周期管理,而非簡單的過濾、轉發、路由?!?
陸飛舟說:“ESB 采用了輕量級的分布式體系結構。當必須將程序間的每次交互轉換為規范格式時,集中式的交換中心才有意義。ESB(如 IONA Artix)可以將更多的處理邏輯分配到端點上。這與大型主機和現代的分布式系統體系結構間的區別相似。交換中心與大型主機一樣,仍然可以用于某些需要它的體系結構中,但它們只是開發人員的一項選擇,而不是供應商指定的要求?!?
陸飛舟說:“ESB采用了Web服務這樣的開放標準,而EAI采用的是私有化集成方式,許多接口都是某廠商自己的技術,而且往往許多集成并不透明?!?
BEA公司的劉汩春認為:“ESB除了運營支撐系統作為服務提供者和消費者的中介提供服務交互、代理和路由功能外,還必須提供可擴展的服務編排、目錄、元數據管理、生命周期管理、服務質量和級別控制等功能。通過這些功能,ESB幫助屏蔽各種服務生產者的差異,集中管理所有的服務消費行為。從而避免服務的大量蔓延,簡化用戶SOA環境的復雜性?!?br>
共2頁: 1 [2] 下一頁 |