SOA參考架構的應用示例

genusBIT發表於2008-08-01

 SOA,即Service Oriented Architecture的縮寫,面向服務的架構,它提供了一種構建IT組織的標準和方法,並通過建立可組合、可重用的服務體系來減少IT業務冗餘並加快專案開發的程式。SOA允許一個企業高效地平衡現有的資源和財產,這種體系能夠使得IT部門效率更高、開發週期更短、專案分發更快,在幫助IT技術和業務整合方面有著深遠的意義。它可以縮小業務和技術的鴻溝,促進軟體資源的共享與重用,使得使用者的業務及應用能夠隨需應變,提高業務敏捷性及企業的競爭力。

  進入21世紀,隨著SOA相關概念、標準和技術的發展,加上國內外眾多廠商的宣傳和推進,國內越來越多的企業和單位,開始採用SOA相關技術和產品,來構建企業及電子政務方面的應用,SOA逐漸從概念走向了普及和實用。

  國內眾多軟體開發企業,在SOA相關技術和產品方面,也投入了大量的人力和物力進行跟蹤和研究,並且開發出了相應的SOA產品。如長風開放標準平臺軟體聯盟,自2005年成立以來,將基礎平臺軟體廠商、應用平臺軟體廠商、科研院所和第三方中介機構聯合起來,進行資源整合,優勢互補,協同合作,在SOA相關概念、標準規範、技術、及SOA技術解決方案方面,做了大量的研究工作。其中,長風聯盟的SOA-RA-TF(SOA參考架構工作組)參照相關的國際標準,充分考慮國內的實際業務需求,提出了一個SOA參考架構,如圖1所示。長風聯盟SOA參考架構本身,體現了鬆散耦合特性,它結合了傳統技術和Web服務技術,考慮了各種應用場景,可靈活地分拆組合使用。

  SOA體系架構及相關技術,主要應用在企業應用整合領域,它能夠以服務的方式共享和複用企業現有應用資產,保護使用者IT投資,並能夠以服務的方式構建新的業務流程,對企業流程進行靈活重構和優化,增強業務的敏捷性。鑑於SOA體系架構的諸多優點和對使用者帶來的利益,國內越來越多的使用者開始採用SOA相關技術和產品,來構建自己的業務應用系統,下面以海事應急輔助指揮系統為例,介紹一下SOA參考架構的實際應用。

  海上船舶出現險情或其他災害性事件時,如果儘可能地控制緊急事件的發展,並消除險情和事故,能將海上事故對人命、財產和環境的危害降低到最低限度。為了提高我國海事應急指揮綜合水平,保護海上人民生命和財產的安全,把“中國海上搜救中心辦公室建成具有現代化、數字化、資訊化管理水平,集水上安全監控、海上搜救決策、資訊分析處理等為一體的組織、協調、指揮中心”,努力提高搜救現代化、數字化、資訊化水平,交通部海事局啟動了海事應急輔助指揮系統試點工程的建設。

  海事應急輔助指揮系統是一個系統工程,範圍上覆蓋中國MRCC、MRSC,技術上涉及到網路、資料庫、船舶交通管理系統(簡稱VTS)、船舶自動識別系統(簡稱AIS)、電子海圖、搜救模型等眾多專業,非常複雜。此係統的建設目標,是通過對海事系統現有資訊資源和通訊資源的整合,在應急指揮資料庫和電子海圖平臺的支援下,利用海上落水人員漂移等數學模型,初步建立以實現人命救助的輔助指揮、應急預案的應用管理為重點的海事應急輔助指揮系統。要實現應急指揮系統,需要將不同部門和應用系統進行資源整合,形成統一的指揮平臺系統。在海事應急輔助指揮系統的建設中,需要整合的應用系統很多,如VTS系統、AIS系統、船舶動態系統、船舶報告查詢系統、應急指揮系統等,這些系統涉及不同的提供廠家(如國內外應用系統廠商)、多種通訊介面(如FTP、TCP/IP、HTTP等)、多種實現技術(如CORBA、J2EE、.NET等)、多種資料格式等,業務複雜,技術難度大。以AIS系統為例,它由岸基(基站)設施和船載裝置以及AIS資料鏈路共同組成,它包括諸如雷達等硬體通訊裝置,又包括訊號採集和處理的軟體系統,技術相當複雜。圖2為本系統資訊整合拓撲圖,是需要將海事應急指揮所需要的分佈在不同地方的海事直屬局的應用系統和資料,同步到部局對應的系統中,而部局的相關資料,也要分發到下面相關直屬局對應系統中。通過資料交換平臺,整合現有資訊資源,形成統一的資料資訊,為應急指揮系統提供資訊服務,實現海事應急資訊綜合查詢。

  圖2.海事應急輔助指揮系統資訊整合拓撲圖

  按照傳統的應用整合解決方案,開發工作量大,系統難於擴充套件和維護,而且它對系統整合商的技術儲備和開發團隊有很高的要求。在這種場景下,採用SOA相關解決方案,無疑是最佳選擇。基於SOA的解決方案,將現有應用系統和業務進行梳理,以服務的方式將現有應用系統接入服務匯流排,把複雜的業務邏輯、通訊協議轉換、複雜資料格式轉換等封裝成服務,對封裝的服務進行自由組合與編排,能夠快速進行不同應用系統之間的互聯互通和資料交換。這樣不但遮蔽了不同應用系統的業務和技術複雜性,還保護了現有應用系統的投資,提高了開發效率。

  在資料交換平臺產品的選型上,經多方比較和權衡,海事局採用了東方通科技基於SOA架構的企業應用整合產品TongIntegrator3及其他中介軟體產品,作為資訊整合的產品解決方案。TongIntegrator3是東方通科技公司新一代的符合SOA架構的企業應用整合產品,主要功能是在兩個或更多的異構系統(如不同的資料庫、訊息中介軟體、ERP或CRM等)之間進行資源整合、互聯互通,實現資料整合、應用整合、業務流程整合等需求功能,以構建靈活可擴充套件的分散式企業應用。TongIntegrator3產品結構由整合開發工具TI Studio、監控管理中心、資源中心、執行環境邏輯節點、便於應用整合開發的元件和套件(如介面卡、Java服務、合成服務等)以及企業服務匯流排TI ESB組成,其結構與SOA參考架構類似,具體組成如圖3所示。

  以東方通科技符合SOA架構的TongIntegrator3和其他中介軟體如訊息中介軟體TongLINK/Q的產品解決方案,如圖4所示,其技術思路如下:

  利用TongIntegrator3提供的介面卡服務,連通海事現有應用系統,遮蔽不同應用系統複雜的技術介面和通訊協議;

  將複雜的資料格式轉換、業務邏輯等,封裝成服務,通過服務匯流排提供服務消費功能;

    利用強大的Java服務功能,對流程進行梳理和編排組合,構成更大粒度的合成服務和流程服務;

  l 採用訊息中介軟體TongLINK/Q,保證分散式的非同步可靠訊息傳輸;

  l 將建立的服務和可複用資源,使用資源中心進行集中儲存,以方便管理及團隊協作開發;

  l 使用內部整合的服務匯流排,對服務消費進行定址路由、通訊協議轉換及服務質量保障等,降低了服務消費者和提供者之間的耦合性。

  在海事應急輔助指揮系統中,SOA參考架構的各個組成部分,從方案的設計、編碼開發、打包部署,到業務應用的執行、監控和管理,大部分得到了實際的應用。如使用整合開發工具TI Studio進行基於SOA的業務分析、設計開發及打包部署;利用資源中心集中儲存服務資源,並進行團隊協作開發和資源編輯版本控制等;使用監控管理中心能夠對SOA執行環境及部署其上執行的SOA應用進行監控和管理;使用Java服務和服務匯流排TI ESB,完成服務的編排、接入、通訊協議轉換、資料格式轉換等功能。

  圖4. 基於東方通SOA中介軟體產品解決方案

  從海事應急輔助指揮系統專案的開發和實施效果來看,基於SOA參考架構的技術、產品及實施方法論,能夠方便地複用企業現有應用系統,保護使用者IT投資,加快開發進度。並且基於SOA構建的新應用業務系統,架構靈活,便於維護和重構,提高使用者的業務敏捷性。因此,通過SOA參考架構的實踐,相信SOA理論和技術的應用,會逐漸走向普及和深入,同時,也會促進國內越來越多的軟體廠商,加大資源和力量投入到SOA技術和產品的開發上面,從而進一步加快提高我國軟體的開發水平。


 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14751907/viewspace-417449/,如需轉載,請註明出處,否則將追究法律責任。

相關文章