苑擎飏 宋洪波
摘要: 隨著信息技術的不斷提高,汽車制造企業信息化程度也隨之快速發展,在發展過程中不可避免的產生了很多的信息“孤島”,面對日益增加的信息化復雜程度,企業應用集成技術日益被關注和重視。本文結合某汽車制造企業信息化的建設實施,采用ESB數據整合技術對局部業務系統進行集成實踐,實現了數據交換與同步的基本應用,取得了一些成果與經驗,對該企業今后的信息化工作產生了積極的推動作用。
Abstract: With the continuous improvement of information technology, the degree of informatization of automobile manufacturing enterprises also develops rapidly. In the process of development, a lot of information "isolated islands" inevitably come into being. Facing the increasing complexity of informatization, increasingly, Enterprise Application Integration is of interest and importance. Based on the construction and implementation of the informatization of a certain automobile manufacturing enterprise, this paper uses ESB data integration technology to integrate the local business systems, realizes the basic application of data exchange and synchronization, obtains some achievements and experiences, which promotes the informatization of enterprise.
關鍵詞: 面向服務架構(SOA);企業服務總線(ESB);應用
Key words: SOA;ESB;applation
中圖分類號:P315.6 文獻標識碼:A 文章編號:1006-4311(2018)10-0241-03
隨著汽車制造行業信息化程度的提高,企業通過信息系統的建設不斷提高組織的管理水平、生產能力,從而提高了企業的競爭力。但是,信息系統建設是一個循序漸進的過程,在不斷滿足企業需要的同時,系統復雜程度不斷升高,系統間的信息共享需求日益凸顯。企業內的信息系統往往存在多個,而且實現的技術方式各有不同,系統間也沒有建立統一規范的接口,大大提高了IT運維的成本,降低了IT服務能力。面對這樣的問題,如果全部重新規劃,原來的IT資產會被大量浪費,所以,如果可以通過技術手段,在盡量保持原有系統的前提下,又能讓個信息系統可以互相通信協作滿足企業的業務需要,就可以降低成本,讓企業原有IT資產充分利用。企業應用集成(Enterprise Application Integration,EAI)是對企業中完成不同業務功能的應用系統進行集成,建立起可供數據交流共享和應用溝通的中心系統,使現有的應用系統和數據庫能夠在新的環境下良好的運行。
迄今為止系統集成技術已經歷了三代,第一代EAI技術為點對點集成模式,部署模型采用網狀結構,采取定制代碼或傳統消息中間件的異步編程模型,能有效解決數據傳輸的可靠性、穩定性與安全性問題,但系統缺乏彈性與擴展性。第二代技術為集線器集成模式,采用星型結構。但中央服務器的存在導致無法實現分布式部署;中央服務器承擔較重責任,帶來壓力瓶頸以及硬件上的額外投資,缺乏靈活性且難于管理。以第一代、第二代為代表的傳統EAI技術不能很好的滿足企業應用系統集成整合的需求。
以面向服務架構(SOA)為代表的第三代分布式模式明確提出了良好的封裝和簡練的接口可以降低應用系統之間的耦合度,將系統的實現和接口分離,以便能夠適應新形勢下的需求。SOA作為一種構造分布式系統的方法,它以服務的形式將業務應用功能提供給用戶,構造出靈活的以服務為中心的架構,不僅極大減少了系統間的耦合,還將復用性能提高了,同時實現了共享系統之間的數據共享。企業服務總線(ESB)整合技術在SOA企業信息化建設中承擔中間連接器的關鍵作用,協調各獨立應用系統間的數據交換與共享。
企業服務總線(Enterprise Service Bus,ESB),它是將傳統中間件技術和Web、XML服務等技術結合起來形成的產物,對于企業神經系統的構筑來說,ESB是必不可少的元素,同時它也是網絡中最基本的連接中樞。與傳統的軟件架構相比,ESB具有明顯優勢,主要體現在以下方面:一是解決方案成本更低;二是消除了不同應用之間的技術差異,大大提高了應用的兼容性,有利于不同服務之間的通信與整合。ESB的體系結構見圖1。
從功能的角度分析,ESB的處理模式是以事件驅動和文檔導向的,其運行管理機制是分布式的,它支持基于內容的過濾和路由,可提供一系列的標準接口,具有強大的數據傳輸能力。
ESB以總線的形式實現不同應用系統之間的通信,它是一種新的集成方法。與集線器集成、點對點集成等傳統的集成方式相比,ESB具有明顯優勢,具體表現如下:
1.1 基于標準和開放的整合技術
ESB支持Web Services系列協議和規范,是SOA的核心要件,且通過支持JCA、JMS、SOAP等連通標準可讓ESB將企業和合作伙伴的應用進行有效整合,從異構性的角度出發,集成系統得到了極大簡化。通過采用這些開放標準,可忽視版本和API的變化,避免傳統集成中間件中存在的不足之處,如此一來即使版本或者服務出現變化,另一端服務的代碼無需跟著改動,不僅簡化了工作環節,也便于服務重用和替換的實現。
1.2 基于事件驅動的服務流程
利用消息通信總線在松散耦合的各個服務和應用間傳遞事件,開展正確的轉換和路由,且調用各服務的接口便可實現存取數據,從而順利的完成業務流程。由于在現實世界中處理業務所需時間較長,而且過程極為復雜,因此基于事件驅動的服務流程機制,有利于將企業間的異步商業流程整合成一個以消息、事件和服務為中心的信息傳遞和呼叫方式。
1.3 集成將更簡單、更便宜
ESB技術已經被廣泛應用在集成市場,未來其應用市場還將越來越寬廣,這是因為與傳統的機場市場相比,ESB技術具有明顯的成本優勢。傳統的集成服務器是龐大的,升級一次所需時間和財力巨大,而ESB基于網絡是輕便的,其升級相對更加容易,大大降低了企業應用集成方面的費用。當前市面上ServiceMix、Celtix、Mule等多種開源ESB,已經在金融和電信等領域得到了一定應用,表現出了明顯的成本優勢。此外,ESB的采用還大大降低了企業的培訓和管理成本,對現有投資而言是保護,十分有利于企業現有IT資產的作用和功能的發揮。
開源Mule是基于ESB架構理念的消息平臺,它是一個以Java為核心的輕量級的消息框架和整合平臺。Mule的核心組件是Service Component,其他組件有主要執行消息的輸入(Inbound Router)、輸出(Outbound Router)和應用邏輯(Business Logic);服務組件的輸入和輸出由EndPoint進行簡單配置即可,它并不負責消息格式的轉換,消息格式轉換工作由轉換器(Transformer)按照所集成的應用系統和服務組件的需要動態完成;傳輸管道(Transport Pipe)完成傳輸不同協議格式數據的任務,它支持30多種傳輸協議。Mule關注其靈活性、高效性以及易開發性。根據上述思想,我們可以結合基于開源Mule ESB的EAI框架來實現一個汽車企業局部業務系統之間的的數據交換。
2.1 系統架構
在汽車企業信息化建設的實踐中選取Mule ESB實現業務系統之間的數據交換與同步,所有對數據的處理操作都封裝成服務,注冊到Mule ESB中。業務數據庫是數據的來源,數據緩存交換系統中存放標準化后的數據結構和數據。車企ESB系統架構圖2所示。
2.2 數據交換過程
如圖2所示,各業務系統分別維護企業統一的數據格式,通過Mule把變動的數據傳遞給數據緩存交換系統,再由后者通過Mule進行變更數據的發布,其他需要該信息的系統接受數據,并更新本地數據庫,以確保業務系統中存在數據的唯一性和有效性。為了降低耦合性,提高靈活性,將Mule ESB數據交換與同步工作分為:導入、處理、分發和導出四個步驟,典型的數據交換過程如圖3所示。
數據交換過程描述:
①當業務系統數據發生變化時,通過觸發Web Service實時導入到增量表中;
②Mule 觸發相應組件的輸入和輸出進行數據處理(數據校驗、邏輯分析、重復數據處理等);
③處理后的數據進入數據緩存交換系統,需分發的數據也通過調用相關的服務,先存放在數據交換區中;
④數據交換區與Mule服務組件共同完成導出和同步的工作。
2.3 數據服務
數據緩存交換系統向業務系統提供相應的數據輸入Web Service,讓其進行調用。并對錄入的信息經過一定的處理,再傳遞到在數據緩存交換的數據庫中。這種方式可以保障數據緩存交換系統數據存儲的安全,使得數據緩存交換的數據結構對各業務系統透明,而且系統耦合度低,不需要依賴業務系統的數據結構,只需定義Web Service接口即可。此外,按照一定的業務配置處理數據的同步規則,數據緩存交換系統可實現數據緩存交換系統與多個業務系統的數據分發工作。
隨著ESB的發展及企業信息化建設的推進,ESB提供了一個強大的、可伸縮的集成平臺,融合SOA和Web Service的思想,用低成本、快速地實現靈活的集成,最大化業務的投資收益,成為車企實現應用系統信息化集成的主要實施方案。本文結合某車企信息化的建設實施,整合已有各系統,在局部范圍內采用ESB數據整合技術進行了實踐,實現了數據交換與同步的基本應用,取得了不錯的效果,同時這些成果和經驗將為未來ESB數據整合技術的深入研究與應用提供參考。
[1]JIANG Jichen, GAO Ming. Enterprise Service Bus and an Open Source Implementation [Z]. China: Computer Science, 2007.
[2] Dave Chappell. Enterprise Service Bus[M].Sebastopol:OReilly,2004.
[3]Colombe Philippe Lalanda,Mediati on and Enter prise Service Bus[EB/OL].http://ftp.informatik.rwth2aachen.de/Publicati ons/CEUR2WS/Vol-2168/MEDIATE20052-paper5.pdf,2005.
[4]張文迪.基于JAVA Reflection/Spring的WEB框架研究與應用[D].西南財經大學,2010.
[5]李曉東,楊揚,郭文彩.基于企業服務總線的數據共享與交換平臺[J].計算機工程,2006,21(32):217-223.
[6]魯亞林,傅鵬.面向服務的企業應用集成探討[J].現代計算機,2006,247:9-19.
[7]周競濤,張樹生,趙寒,王明微,張超,王克飛,董小鋒.基于語義模型的總線式企業信息集成框架[J].計算機集成制造系統,2006(03).
[8]周航濱,夏安邦,張長昊.基于Web服務的跨企業信息集成框架[J].計算機集成制造系統-CIMS,2003(01).