蔡建坤 劉俊波
摘要 隨著空管系統(tǒng)引入越來(lái)越多應(yīng)用系統(tǒng),系統(tǒng)間進(jìn)行信息共享越來(lái)越普遍??展芟到y(tǒng)間對(duì)信息的安全性、完整性、及時(shí)性、高效率性的要求一般都比較高,而目前空管主流的信息共享的技術(shù)手段都存在缺陷。本文設(shè)計(jì)了一種基于發(fā)布訂閱模式的系統(tǒng)間信息共享方案,可同時(shí)支持航班數(shù)據(jù)、監(jiān)視數(shù)據(jù)等信息共享,滿足了空管系統(tǒng)對(duì)信息的要求,對(duì)空管系統(tǒng)間共享信息具有良好的參照指導(dǎo)意義。
【關(guān)鍵詞】信息共享 發(fā)布訂閱 航班數(shù)據(jù) 監(jiān)視數(shù)據(jù)
1 引言
1.1 空管應(yīng)用系統(tǒng)對(duì)信息源的要求
空管信息主要分為航班信息和監(jiān)視信息。當(dāng)某個(gè)應(yīng)用系統(tǒng)需獲取另一個(gè)系統(tǒng)的空管數(shù)據(jù)時(shí),一般考慮以下問(wèn)題:
(1)數(shù)據(jù)是否安全可靠。
(2)數(shù)據(jù)是否完整。
(3)數(shù)據(jù)是否及時(shí)。
(4)數(shù)據(jù)傳輸是否具有高效率
以上的問(wèn)題對(duì)應(yīng)數(shù)據(jù)的安全性、完整性、及時(shí)性、高效率性要求。因此系統(tǒng)間的數(shù)據(jù)共享需不同程度的滿足以上要求。
1.2 目前空管主流的信息共享技術(shù)介紹
目前主流的信息共享技術(shù)一般包括數(shù)據(jù)庫(kù)共享、Webservice接口、SOCKET數(shù)據(jù)包三種方式。
1.21 數(shù)據(jù)庫(kù)共享
采用數(shù)據(jù)庫(kù)對(duì)接的方式。數(shù)據(jù)提供方一般采用數(shù)據(jù)庫(kù)鏈接的方式將數(shù)據(jù)庫(kù)提供給對(duì)方訪問(wèn)。數(shù)據(jù)庫(kù)共享方式存在以下不足:
(1)使雙方的系統(tǒng)具有較大的耦合性。
(2)獲取方存在數(shù)據(jù)庫(kù)平臺(tái)受限的問(wèn)題,獲取方需采用提供方類(lèi)似的或者支持轉(zhuǎn)換的數(shù)據(jù)庫(kù)平臺(tái)。
1.2.2 Webservice接口
Webservice接口是遠(yuǎn)程過(guò)程調(diào)用的一種實(shí)現(xiàn)方式。數(shù)據(jù)提供方采用SOAP方法將接口封裝成遠(yuǎn)程過(guò)程調(diào)用,獲取方通過(guò)調(diào)用接口的方式獲取。
Webservice接口可規(guī)范數(shù)據(jù)傳輸,但是存在實(shí)時(shí)性不夠的問(wèn)題。實(shí)時(shí)性視獲取方的輪詢頻率而定,當(dāng)輪詢頻率低時(shí),延遲較大;當(dāng)輪詢頻率高時(shí),延遲較小,但是對(duì)接口的負(fù)荷劇增。
1.2.3 SOCKET數(shù)據(jù)包
SOCKET數(shù)據(jù)包是己按定義的格式,采用TCP或UDP的傳輸協(xié)議進(jìn)行數(shù)據(jù)傳輸。
SOCKET數(shù)據(jù)包的實(shí)現(xiàn)通過(guò)系統(tǒng)API實(shí)現(xiàn),在高效率性有比較好的體現(xiàn),但是對(duì)開(kāi)發(fā)效率、可擴(kuò)展性都比較低。
2 基于發(fā)布訂閱模式的系統(tǒng)間信息共享方案
針對(duì)現(xiàn)有空管主流共享技術(shù)存在的不足,本文提出了基于發(fā)布訂閱模式的系統(tǒng)間信息共享方案設(shè)計(jì)。
2.1 發(fā)布訂閱模式介紹
發(fā)布訂閱模式,是數(shù)據(jù)發(fā)布模式的一種,在金融行業(yè)、互聯(lián)網(wǎng)行業(yè)等都有廣泛應(yīng)用。發(fā)布訂閱模式定義了一種一對(duì)多的依賴關(guān)系,讓多個(gè)訂閱者對(duì)象同時(shí)監(jiān)聽(tīng)一個(gè)主題對(duì)象,由發(fā)布者負(fù)責(zé)更新主題對(duì)象。當(dāng)這個(gè)主題對(duì)象在自身發(fā)生變化時(shí),會(huì)通知所有訂閱者對(duì)象,使它們能夠自動(dòng)更新自己的狀態(tài)。
發(fā)布訂閱模式具有以下特點(diǎn):
(1) -個(gè)訂閱者可以訂閱多個(gè)發(fā)布者。
(2)消息是會(huì)到達(dá)所有訂閱者,訂閱者可根據(jù)過(guò)濾條件獲取所需信息。
(3)沒(méi)有訂閱者都會(huì)接收到每條消息的一個(gè)副本。
(4)基于推送,消息自動(dòng)向訂閱者廣播,訂閱者無(wú)需輪詢主題獲取新消息。
2.2 共享模式設(shè)計(jì)
鑒于空管系統(tǒng)間對(duì)信息的要求,本方案根據(jù)發(fā)布訂閱模式的特點(diǎn),定義了共享信息的三種發(fā)布模式:周期性發(fā)布模式、更新性發(fā)布模式和數(shù)據(jù)加密模式。
2.2.1 周期性發(fā)布模式
方案將周期性的將當(dāng)天所有航班的航班信息和監(jiān)視數(shù)據(jù)進(jìn)行發(fā)布。每一個(gè)接入系統(tǒng)將定期的獲取到當(dāng)天所有航班的航班信息和監(jiān)視數(shù)據(jù)。
2.2.2 更新性發(fā)布模式
方案將實(shí)時(shí)將各個(gè)航班的實(shí)時(shí)變化數(shù)據(jù)(包括航班數(shù)據(jù)和監(jiān)視數(shù)據(jù))進(jìn)行發(fā)布。每一個(gè)接入系統(tǒng)將實(shí)時(shí)獲取到各個(gè)航班的更新信息。
2.2.3 數(shù)據(jù)加密模式
方案可根據(jù)現(xiàn)實(shí)情況對(duì)本方案發(fā)布的信息采取加密或不加密的手段。當(dāng)方案采取加密手段時(shí),每一個(gè)接入系統(tǒng)需具備密鑰才可準(zhǔn)確獲取到數(shù)據(jù)。
周期性發(fā)布模式保障了數(shù)據(jù)的完整性,更新性發(fā)布模式保障了數(shù)據(jù)的及時(shí)性和高效率性,數(shù)據(jù)加密模式保障了數(shù)據(jù)的安全性。此三種模式可自由組合,以便最大程度滿足用戶的數(shù)據(jù)需求。
3 方案實(shí)現(xiàn)
按本方案,當(dāng)系統(tǒng)間共享數(shù)據(jù)時(shí),其數(shù)據(jù)流走向如圖1所示。對(duì)應(yīng)共享雙方的系統(tǒng),都增加了一個(gè)獨(dú)立的模塊,發(fā)布者的系統(tǒng)增加了發(fā)布模塊,訂閱者的系統(tǒng)增加了訂閱模塊。
發(fā)布者的發(fā)布模塊實(shí)現(xiàn)了將航班數(shù)據(jù)、監(jiān)視數(shù)據(jù)周期性、更新性的發(fā)布到數(shù)據(jù)總線的某些主題上去。訂閱者的訂閱模塊實(shí)現(xiàn)了按自身需要訂閱某些主題,以獲得空管信息。
4 本方案的優(yōu)勢(shì)
本方案具有如下的優(yōu)勢(shì):
(1)具有較高安全性、完整性、及時(shí)性、高效率性。
(2)與數(shù)據(jù)種類(lèi)無(wú)關(guān),可支持多種數(shù)據(jù)共享。
(3)接口跨平臺(tái),不同操作系統(tǒng)都可以正常獲取。
(4)降低了系統(tǒng)間的耦合度。相關(guān)系統(tǒng)可自由選取數(shù)據(jù)庫(kù)平臺(tái),無(wú)需進(jìn)行不同數(shù)據(jù)庫(kù)之間的轉(zhuǎn)換。
(5)可擴(kuò)展性強(qiáng)。當(dāng)系統(tǒng)復(fù)雜后,可將消息訂閱和分發(fā)機(jī)制單獨(dú),增加新特性以滿足需求。
5 小結(jié)
本文將在發(fā)布訂閱模式引入到空管系統(tǒng)來(lái),解決了目前空管主流信息共享技術(shù)的問(wèn)題,提供了新的實(shí)現(xiàn)方案,對(duì)空管系統(tǒng)間的信息共享具有良好的參考意義。
參考文獻(xiàn)
[1]楊坤,向凡夫,紀(jì)峰波,基于訂閱/發(fā)布機(jī)制的軍事信息系統(tǒng)知識(shí)庫(kù)協(xié)同框架探討[J].指揮控制與仿真,2011(03).
[2]汪錦嶺.面向internet的發(fā)布/訂閱系統(tǒng)的關(guān)鍵技術(shù)研究[D].中國(guó)科學(xué)院研究生院(軟件研究所),2005.
[3]董俊,基于發(fā)布訂閱模式的中間件設(shè)計(jì)與實(shí)現(xiàn)[D],上海交通大學(xué),2009.