


摘 要:針對程序開發者各應用程序間沒有統一數據傳輸標準,很難實現程序間的交互這一問題,提出了基于 XML 和消息中間件的統一的信息交換模型,實現了各區域間信息的共享與交互。
關鍵詞:信息交換模型;消息中間件;XML
引言
信息交換是指不同計算機應用程序之間互相交流有用信息,便于跨平臺、跨數據庫進行數據交換,主要應用于電子商務、遠程服務、數據集成等領域。信息交換的前提條件是進行信息互換的應用程序間有著統一的數據傳輸標準,但是,目前不同的應用程序由于采用的開發技術或者開發平臺不同,導致各個應用程序均使用自身的專有信息通信格式,很難實現各應用程序之間的信息交互。
針對以上問題提出了一種基于XML和消息中間件的信息交互模型,有效提取出各信號機提供的數據,實現系統控制區域的動態劃分和合并,以及各區域間數據的共享與交互。
1 XML與消息中間件
1.1 XML技術
1998年,互聯網聯合組織(W3C,World Wide Web Consortium)發布XML(eXtensible Markup Language,可擴展標記語言),該語言將SGML(標準通用標記語言)的功能和HTML的易用性結合在了 Web應用中,擴展性和可驗證性較好,而且易于使用和易于移植。因此,XML在一些中間件、電子商務等領域大受歡迎[1]。
XML單獨處理文檔的三個要素(數據、結構和顯示格式)。顯示方式主要通過在StyleSheet(樣式表文件)中保存,改變文檔顯示方式只需要通過修改StyleSheet即可,許多復雜的數據關系都可以通過XML 的自我描述性表現[2],方便基于XML的應用程序準確查找XML文件中的數據,XML可以作為數據交互標準實現不同系統間的通信[3]。
1.2 消息中間件技術
中間件位于操作系統和應用程序之間的一類軟件,封裝了一類應用程序的共性并且提供相應的API進行二次開發,最終完成一個應用程序。中間件主要分為底層中間件和高層中間件。前者主要為了解決某一類問題或者支持單個應用程序;后者側重于整合應用程序,和若干個應用程序都有交互,一般運行時都是基于底層中間件的。
消息中間件實現的信息交互的主要特點是消息傳遞機制是高效可靠而且平臺無關的?;谙⑴抨犚约皞鬟f模型,消息中間件可以支持多通信協議,實現了分布式系統的集成。MOM的基本組成包括消息和MOM提供者、客戶端,前者主要指的是管理工具和相關API。由于MOM中提供的路由體系結構不同,所以MOM可以應用于集中式消息服務器上也可以由各客戶端實現路由功能。ActiveMQ就是其中的一種。
2 信息交換模型設計
信息交換是指不同信息實體之間信息交互的過程而信息交換模型狹義是指服務于不同信息實體間信息交互的模型,廣義是指連接多個應用程序的接口模型。信息交換模型主要運用于開發基于異構數據庫的應用程序,完成跨平臺的信息訪問。信息實體間的信息共享或者信息交換過程一般都分為三個步驟:生成信息、傳輸信息和處理信息。不同信息實體有不同的需求和規范,所以各信息實體涉及的技術和處理流程均有差別。
2.1 模型研究
基于 XML /消息中間件的信息交換系統主要包括三部分:XML處理器、消息中間件以及信息交換終端[4]。XML處理器和各異構信息源連接,主要負責信息的采集、轉換或者信息的解析;消息中間件負責完成網絡環境下信息的傳輸;信息交換終端主要負責信息的加密和解密、信息的處理、信息的路由管理等。系統的總體結構如圖1所示。
2.2 模型設計
2.2.1 信息交換邏輯。整個信息交換模型包括三部分:源終端信息交換系統,中間信息交換網絡和目的終端信息交換系統,如圖2所示。
源終端信息交換系統是信息交換過程中的發起方,比如交通信號控制系統中的后臺軟件管理員想配置某路口信號機的執行方案,此時負責發送信息的后臺管理軟件是源終端信息交換系統,被配置的路口信號機系統是目的終端信息交換系統。中間信息交換網絡負責把信息通過適當的通信鏈路轉發到目的終端信息交換系統。發送端應用程序發送信息時,首先源業務應用程序負責對原始信息進行處理和格式轉換,然后將信息提交至源終端信息交換系統進行信息的封裝,最后通過源終端信息交換系統把信息提交給中間信息交換網絡。接收端應用程序接收信息時,中間信息交換網絡負責將信息轉發至目的終端信息交換系統,目的終端信息交換系統首先對信息進行驗證,然后將正確而完整的信息發送至目的應用程序,目的應用程序根據需求對信息進行解析并且進行相應的業務處理。
2.2.2 信息交換網絡環境配置。信息交換網絡的集成主要是基于消息中間件的信息服務功能完成的。文章選用Apache 的Active MQ,Active MQ提供的標準、可靠、跨語言的信息傳輸系統,主要是提供了一個信息交換平臺,負責管控和完成一個集成系統的各子應用程序間的通信過程[6]。Active MQ主要實現了信息的路由、轉發以及基于主題的發布/訂閱等功能。信息交換網絡組成一個信息服務域,在該信息服務域中要求安裝和配置Active MQ。
2.2.3 消息路由機制。信息交換的消息路由機制是基于主題實現的,以交通信號控制系統為例,消息路由機制如圖4所示,交通信號控制系統和各路口的信號機控制平臺的信息交換是通過消息中間件Active MQ實現的。Active MQ 屬于發布/訂閱型的消息中間件,交通信號控制系統作為發布端時的主題為“Teleseme Signal Messages”,信號機控制平臺作為發布端時的主題為“Signal Teleseme Messages”。交通信號控制系統主動向信號機控制平臺發送消息時,將消息發送至“Teleseme Signal Messages”隊列中,作為訂閱者的信號機控制平臺便從該隊列讀取消息,信號機控制平臺主動向交通信號控制系統發送消息時,將消息發送至“Signal Teleseme Messages”隊列中,作為訂閱者的交通信號控制系統從該隊列讀取消息。
3 結束語
文章設計的基于XML和消息中間件的信息交換模型,實現了各信號機提供的數據的有效提取,以及系統控制區域的動態劃分和合并,但由于不同應用系統間數據量差異大,且有很多實時數據,如何進一步完善更加通用、可移植的信息交換系統,使其能夠應用在更多的領域有待更深入研究。
參考文獻
[1]Eric Jui-Lin,Ru Hui-Tsai.An empirical study of XML/EDI[J].The Journal of Systems and Software,2011(58):271-279.
[2]趙一雪.基于XML數據庫的數據查詢優化的研究[D].哈爾濱工程大學,2006.
[3]王曉玲,栗金峰,董逸生.基于演化計算的XML數據的關系存儲[J].計算機研究與發展,2003,7,40(7):1110-1116.
[4]牛德雄,武友新,江恭和.基于統一信息交換模型的信息交換研究[J].計算機工程與應用,2005(21).
[5]鄒盟軍,黃煒.基于消息機制和XML的數據交換中心的設計[J].電力系統及其自動化學報,2004(4).
[6]史小平,趙瑋.消息隊列中間件技術研究與功能分析[J].內蒙古科技與經濟,2009(2).
作者簡介:郭小丹(1980-),女,碩士,實驗師,主要研究方向:計算機網絡及單片機。