天天看點

服務基礎架構:成功實施SOA的基礎

   今天,SOA已經成為企業IT系統建設的大趨勢,越來越多的企業開始實施SOA。不過,要想真正成功地實施SOA,就需要一個優化的、開放的服務基礎設施,它可以讓您在無需編碼的情況下建立起跨異構系統的複合應用。

    服務基礎架構(Service Infrastructure)是一種全新的企業軟體類别,其基本目标是幫助企業建立以服務為中心的基礎架構,推動面向服務的架構(SOA)從試驗階段進入大規模實施階段。這一概念由BEA公司首先提出,并很快得到全球著名的市場研究機構、軟體廠商和企業使用者的一緻贊同和認可。

    究竟什麼是服務基礎架構?它有什麼作用?在給出定義之前,讓我們首先觀看一個在企業合并中經常遇到的場景。

    兩家大型企業已達成合并協定,其财務系統也随之需要進行整合。讓IT部門感到高興的是兩家企業使用的财務系統都出自同一廠商,并且是同一産品,是以IT部門相信該軟體的整合工作會相對快速和簡單。然而,工作的最終期限已過去兩年,該項目仍然未能完成,預算也超支了200%。到底發生了什麼?

    企業應用系統包括了多個版本和例程——這大大增加了內建複雜性。兩家企業雖然采用了相同的财務系統,但各自的會計業務流程卻大不相同,是以分别對應用系統進行了不同的定制。由于定制的業務邏輯隐藏在應用中,是以進行系統合并時必須深入了解複雜的底層技術,這需要開發團隊耗費數月來編寫代碼。

    應對以上挑戰的最佳途徑是建立企業級的服務基礎架構!服務基礎架構的建立使業務邏輯可以在基礎架構中進行安全的抽象,并能夠采用XML實作快速标準化;應用服務被編譯為端到端的工作流,而不是系統間脆弱的連接配接。這将使合并後的企業能夠專注于合并業務流程,而不需要再開發數千行的內建代碼。

    什麼是服務基礎架構?

    顧名思義,服務基礎架構就是以服務為核心建立起來的基礎架構,它是一種全新的企業軟體類别,幫助使用者部署面向服務的架構,使得資訊能夠在企業内外自由地流動。

    服務基礎架構的出現是為了應對大規模實施SOA所面臨的挑戰。它提供了在SOA的整個生命周期裡部署、配置、保護和管理異構服務所需的全部功能。利用服務基礎架構,IT部門可以将運作在任何平台(而不僅僅是Java)上的服務部署在一個共享消息、管理、資料內建和安全服務的基礎架構之上;業務流程、安全和資料專家則可以利用現有的服務組合出新的複合應用,無需要求IT部門編寫新的代碼。

    對企業來說,“服務基礎架構”是實作IT與業務同步的關鍵,它提供了一個能在異構環境中快速、準确、無縫工作的獨立平台,可以充分保護客戶的IT投資,防止廠商壟斷,有助于讓業務流程、資訊和服務在異構的業務環境中安全地流動,并能同時提升專有系統之上的業務邏輯。

    服務基礎架構的主要功能包括以下一些,它可以完成從服務發現、合作直至操作、管理的全生命周期管理。

   * 服務使能:能確定基于标準的服務可以被重新組合和利用,并成功地用于典型企業應用環境的各種系統中。

   * 生命周期管理:使IT系統能更精确地追蹤服務及其屬性,并同時提供生命周期工具來發現、組合、安全、部署和更有效地管理服務。

   * 消息代理:使服務骨幹網能提供松耦合的連接配接,而不是過去那種令衆多企業痛苦不堪的手工編碼的、緊耦合的、脆弱的點對點連接配接。通過将自定義的邏輯(例如安全規則)從應用中剝離出來,并放入服務骨幹網中,就可以将它們作為獨立的政策在企業範圍内很友善地管理它們。

   * 資料服務層:提供了一個公共的基礎設施,它可以使應用程式很友善地通路、轉化和更新存儲在多個異構資料源中的資料。

   * 安全服務層:服務基礎架構可以将安全作為服務傳遞,進而使業務流程或應用元件可以通過公共架構使用公共的安全服務(例如驗證和授權服務)。

   * 可伸縮性:服務基礎架構可提供中繼資料級的複合架構,進而允許您無需經過冗長的程式設計過程就可以改變業務政策,而在過去的企業IT環境裡,業務政策的改變通常都無法避免冗長的程式設計過程。

    服務基礎架構的演進

    服務基礎架構的出現實際上是企業應用基礎架構的自然演進。20世紀90年代初期,企業若想定制網絡作業系統的功能,就需要自己對系統進行編碼。基于HPUX、Solaris或AIX的應用或擴充都包含在各自的系統代碼中,這就形成了不具有重用性的孤島系統。這種方式帶來的必然結果是企業IT系統變得越來越依賴于同種裝置,久而久之就會導緻廠商壟斷。

    同樣的一幕在若幹年後随着企業應用軟體的出現再次重演。企業為使其SAP供應鍊應用系統或PeopleSoft人力資源系統适應内部業務流程而進行相應定制時,開發人員需要在SAP或PeopleSoft應用系統内部進行編碼。如果企業需要将Siebel CRM解決方案和Oracle資料庫進行內建,那麼內建代碼必須被包含到Oracle或Siebel應用中。企業自己的業務邏輯再次成為了廠商專有軟體的内部“财産”。

    為了将業務邏輯從樊籬中解放出來,企業應用基礎架構應運而生。最初的企業應用基礎架構是分布式事務處理系統。1995年,BEA推出了Tuxedo平台,它提供了在異構環境中建構和內建C、C++和COBOL應用的架構。通過使用API和內建服務,Tuxedo對技術的底層複雜性進行了有效抽象,進而将功能從底層編碼中提取出來。随後,Internet的廣泛普及要求企業應用能夠與基于浏覽器的前端協同工作。應對這一挑戰,BEA WebLogic Server 和BEA WebLogic Platform為此類應用的開發、內建和管理提供了業界第一個統一架構,使企業能夠從容建構對業務成功至關重要的企業應用。 

    有了用于擴充作業系統和企業應用的平台之後,企業應用開始向面向服務的架構轉變:将一個系統表示為一整套可重用的服務,使其他系統能夠對該系統進行通路。這種方式産生了一個全新的應用類别——複合應用——它定義了跨越多個應用的業務流程,并允許流程間的功能共享。然而,複合應用的推進面臨着很多現實的阻礙,企業IT環境由于多種應用平台(IBM、BEA、Microsoft、SAP、Oracle等)和異構環境(J2EE、.NET、原有大型機等)的并存而變得複雜和混亂。這些因素都對複合應用提出了挑戰,因為“組合”過程需要大量的程式設計,進而加大了系統內建的成本。

    SOA給這一問題的解決帶來了希望,它可以将包含在企業應用中的離散業務功能提取出來,将其組合為可互用的、基于标準的服務。但随着SOA從試用階段轉向實際應用,使用者逐漸發現他們需要一種新的軟體基礎架構來幫助他們快速地組合、釋出、配置和管理服務,特别是那些建立和部署了50個以上Web服務的客戶對此的需求尤為迫切,因為Web服務的增加會導緻“服務蔓延”,進而需要不斷地內建并使規模化的難度加大。

    BEA的服務基礎架構恰好能滿足這一需求,它提供了在異構環境中運作和管理業務及IT服務所需的全生命周期功能,包括消息骨幹網、資料內建服務、使用者界面服務、安全架構、業務流程管理、Web服務管理、服務倉庫和內建的配置環境。它使應用系統的開發從開發代碼轉換為組合跨越整個企業甚至Internet的業務流程。采用服務基礎架構,企業就能夠基于異構技術建立應用,并同時将業務邏輯提升到專有應用之上。企業的IT系統再也無需在Java、.NET或SAP間做出選擇,而是能夠綜合利用Java、.NET、SAP和企業中現有的其他任意技術。服務基礎架構為整個SOA生命周期提供了一個平台,使企業能夠将SOA從小規模試用項目推廣為大規模普及。

    服務基礎架構給企業帶來的好處是顯而易見的,它簡化了複合應用的提供,使企業能夠更快速地提升響應能力。它可以為企業帶來的好處有:提高效率、加強響應能力、降低複雜性、增加重用性、降低生命周期成本等等。

     未來前景

    服務基礎架建構立在企業應用基礎架構之上,它的出現使企業IT邁入SOA時代有了現實的保障。實際上,服務基礎架構擴充了原有的“企業服務總線(ESB)”的概念,将“服務總線”上升到“基礎架構”層面,幫助企業建立以服務為核心的基礎架構平台,真正實作“彌合業務服務與IT服務之間的鴻溝”。

    正是看到“服務基礎架構”對企業SOA實施帶來的巨大促進作用,全球著名的IT咨詢機構都紛紛發表評論。Gartner Group稱,“BEA的遠見卓識反映了技術行業的目前趨勢,無論是對BEA的客戶還是軟體行業來說,這都有着重大意義。”Current Analyst則稱:“我們非常看好BEA的服務基礎架構軟體,它可以更好地滿足正在實施SOA的客戶的需求。”

    目前,BEA已經推出了最新的服務基礎架構産品――BEA AquaLogic,它包括6條産品線,已經正式釋出有三條,分别是BEA AquaLogic消息産品線、BEA AquaLogic資料産品線和BEA AquaLogic安全産品線。這些産品可以幫助企業使用者利用組合與管理工具,來發現、保護、管理群組裝建立在異構平台上的服務,進而使應用專家和IT專業人員能夠從繁複的代碼編寫中解放出來,把精力放在建構跨企業和跨Internet的業務流程上,使企業能夠更快地為員工、客戶、合作夥伴和供應商提供新服務。對最終使用者而言,這意味着無需等待漫長的開發周期,就可以建立出滿足其特定需求的應用。

繼續閱讀