歐陽玉梅
(桂林電子科技大學 信息科技學院,廣西 桂林 541004)
面對變幻莫測的市場需求的變化,企業(yè)希望通過推進服務化來提高敏捷性和響應能力,更方便地與客戶和合作伙伴交互,更靈活地設計和構建IT基礎架構。為此,面向服務的架構 (Service-Oriented Architecture,簡稱SOA)日益引起企業(yè)高層的重視。為了優(yōu)化IT基礎結構,以便交付服務,將SOA變成現實,IT組織需要一個智能化的基礎架構,以降低服務重復應用,并可靠地集成IT環(huán)境的各種技術、協議和應用,隱藏各種應用和技術帶來的底層復雜性,并提供一個定制企業(yè)應用的平臺。我們將上述服務或集成層稱為企業(yè)服務總線(Enterprise Service Bus,簡稱ESB)。ESB使服務端點本身不必再管理服務之間的交互,允許方便地擴展服務,消除了專門編寫的點對點、硬編碼實現的脆弱性,以及帶來的昂貴代價。
本文介紹的Oracle服務總線 (Oracle Service Bus,簡稱OSB)是ESB的一種類型,用于集成服務,管理服務交互,并在不同IT環(huán)境之間執(zhí)行消息代理。它的實施可分為三個步驟,第一,應用程序將消息數據發(fā)送到本地消息隊列;第二,OSB接受到相應數據,對數據拆包、解析轉換、組包,并發(fā)送到轉發(fā)消息隊列;第三,轉發(fā)隊列接受到消息后,利用Weblogic服務 (Weblogic Server,簡稱WLS)的消息存儲轉發(fā)(Store and Forward,簡稱 SAF)功能將消息發(fā)送到異地交通部消息隊列中等待處理。
圖1 系統總體結構圖
根據交通運輸部門、公安部門、工商部門和國家安監(jiān)局在道路運輸中的職責,結合交通運輸部門目前的分級管理體制,全國道路運政管理信息系統采用縱向分級、橫向對接的體系結構。在總體功能設計目標上,主要在于完成對來自各省道路運輸行業(yè)數據采集的同時,實現各類道路運輸數據在部省、省與省之間主動交換以及共享等功能行為。系統總體結構圖如圖1所示。
道路運輸信息化建設頂層設計的關鍵問題在于系統的整體交換與共享平臺的架設,同時要確立在該架設基礎上,充分定義與設計不同的道路運輸有關的信息化數據相應規(guī)范或者標準,通過標準的規(guī)范性數據接口定義,實現整體道路運輸相關數據的采集以及數據自上而下的主動推送,從而達到整體的道路運輸數據面向全國各省之間的數據拉通,實現數據的簡易交互,最終實現對于重點運輸過程的各類數據的面向部與省、省與省之間的數據交互,構建面向全國范圍內的整體道路運輸數據的交換渠道。
系統中的業(yè)務子系統普遍存在數據交換與共享的需求,根據它們之間的邏輯關系我們可以看出各個系統平臺之間點對點的連接給我們帶來了很大困難,我們要為這些連接定義單獨的接口,而隨著系統的升級,這些交換與共享的需求會慢慢變大,接口就會隨之增多,系統變得龐大而且及其復雜。
為了解決這個問題,我們要在這些系統之間建立一座負責數據流通的橋梁,各個系統之間的信息交換與共享,我們稱之為信息交換與共享平臺。我們這里采用的是Oracle的服務總線產品OSB。建立共享平臺之后的系統架構就顯得十分清晰,如圖2所示。
圖2 基于服務總線的系統構造
將OSB作為服務使用者和服務提供者間的中間層,可消除脆弱的點對點連接,并消除這些連接的專門維護。
OSB是策略驅動的中介層,它處理消息,確定如何根據要求路由和轉換消息。它通過諸如Java消息服務(Java Message Service,簡稱JMS) 或超文本傳送協議 (Hypertext Transport Protocol,簡稱HTTP)的傳輸協議接收消息,并用相同協議或另一指定的傳輸協議發(fā)送消息。由于代理服務可將消息路由給多個業(yè)務服務,故可以獨立于與代理通信的業(yè)務服務,配置代理服務的接口。在這種情況下,代理將被配置為消息流定義,它根據路由邏輯,將消息路由給相應的業(yè)務服務,然后將消息數據映射為業(yè)務服務接口需要的格式。
代理服務的核心是 “上下文”,上下文是一組可擴展標記語言(Extensible Markup Language,簡稱XML)變量,由請求流和響應流共享??蓪⑿伦兞縿討B(tài)地添加到上下文,也可從上下文刪除變量。預定義上下文變量包含有關消息、傳輸頭、安全原理的信息,當前代理服務的元數據,以及代理服務調用的主要路由服務和發(fā)布服務的元數據。代理服務是OSB架構的一個核心概念。服務使用者經由這個接口與托管的后端服務連接。代理服務是服務總線在本地實現的中介Web服務的定義。
本文闡述了現階段交通行業(yè)中的業(yè)務流程的復雜性以及具體的業(yè)務需求,介紹了基于OSB的數據交換與共享平臺實施的可行性,并結合以往的解決方案做了比較,指出了OSB在交通行業(yè)中所發(fā)揮的優(yōu)勢。OSB是目前較為成熟的服務總線技術,已廣泛應用于電網、銀行、保險等各個領域,隨著交通運輸行業(yè)的快速發(fā)展,基于服務總線的架構設計必然成為主流趨勢,為交通行業(yè)中的數據拉通設計出更好的系統構造。
[1][美]ThomasErl..SOA 服務設計原則[M].北京∶人民郵電出版社,2009,06∶23-25.
[2]鄒偉,王雪松,劉偉祥.基于WebService的公安交通綜合管理服務請求平臺設計[J].科技信息,2011(03):445-446
[3]李聰,陳偉,劉建,王林.交通行業(yè)信息資源整合平臺設計[J].交通信息與安全,2009(03)∶86-90.
[4]趙新勇.公安交通管理信息系統集成技術應用研究[J].交通運輸系統工程與信息,2009,09(01)∶133-138.
[5]虞鋼.企業(yè)服務總線的消息處理方法[P].西本新干線股份有限公司,2010-06-04.