基于MapXtreme的直放站集中監(jiān)控管理系統(tǒng)開發(fā)與實現(xiàn)
(3)任務(wù)管理模塊:主要完成任務(wù)列表的顯示、編輯和設(shè)置。任務(wù)列表顯示了用戶添加的通信任務(wù)的相關(guān)信息,具體包括:任務(wù)序號、任務(wù)名稱、通信功能、傳輸模式、生效時間、失效時間、是否生效等。
(4)報警管理模塊:能夠實現(xiàn)對報警數(shù)據(jù)的實時采集和集中監(jiān)視,輔助運維人員快速發(fā)現(xiàn)網(wǎng)絡(luò)問題并定位故障,自動生成報警工單,同時提供對報警信息的各種處理功能,提供對歷史報警信息的統(tǒng)計和查詢功能。
(5)統(tǒng)計分析模塊:可以完成分析下行輸入、輸出功率和下行駐波的關(guān)系,統(tǒng)計各個站點的報警信息,檢查近遠(yuǎn)端設(shè)備配對情況,分析站點的參數(shù)對象是否完整、各種門限是否符合要求等。
2 MapXtreme應(yīng)用方案的分析與設(shè)計
在直放站集中監(jiān)控管理系統(tǒng)中引入電子地圖,可以精確定位直放站的位置,并與基站的位置信息相關(guān)聯(lián),開發(fā)報警的關(guān)聯(lián)功能,而且可以提供更直觀的用戶界面,方便監(jiān)控和操作。
電子地圖功能可通過WebGIS系統(tǒng)中的MapXtreme實現(xiàn)。MapXtreme是MapInfo公司開發(fā)的一個基于互聯(lián)網(wǎng)技術(shù)的地圖應(yīng)用軟件,其中,MapXtreme for Java版本是100%純Java產(chǎn)品,具有跨平臺、組件化、面向?qū)ο蟆⒎螶2EE規(guī)范等特點和優(yōu)勢,因此選用它作為開發(fā)平臺。使用MapXtreme開發(fā)WebGIS應(yīng)用,開發(fā)人員能集中控制以及維護(hù)地圖和數(shù)據(jù)庫數(shù)據(jù),并集中實現(xiàn)地圖應(yīng)用程序功能。此外,由于使用IE瀏覽器作為客戶端的使用界面,可使開發(fā)人員將地理信息系統(tǒng)緊密地與其他系統(tǒng)相結(jié)合,給用戶提供統(tǒng)一、完整的綜合信息服務(wù)。基于MapXtreme的WebGIS應(yīng)用方案如圖4所示[4]。本文引用地址:http://cafeforensic.com/article/157573.htm
IE瀏覽器是一個圖形用戶界面,采用Java Applet與JavaScript為用戶提供地圖的基本操作,實現(xiàn)空間數(shù)據(jù)顯示、查詢統(tǒng)計分析等功能。
Web服務(wù)器處理客戶端的請求并把對空間數(shù)據(jù)的處理命令傳遞給GIS應(yīng)用服務(wù)器,回傳HTML文件及Java服務(wù)器對象組件;加載空間數(shù)據(jù)等??蛻舳薐ava Applet通過服務(wù)器端Servlet的URL重新構(gòu)造URL類,向服務(wù)器端的Servlet發(fā)出請求,Servlet調(diào)用JDBC驅(qū)動器,JDBC驅(qū)動器負(fù)責(zé)連接、操作GIS數(shù)據(jù)庫并在客戶端的瀏覽器中顯示。Web服務(wù)器層也可直接利用標(biāo)準(zhǔn)SQL語言訪問數(shù)據(jù)庫服務(wù)器以獲取較復(fù)雜的屬性數(shù)據(jù)。
GIS應(yīng)用服務(wù)器處理來自Web服務(wù)器空間數(shù)據(jù)操作命令,進(jìn)行地圖生成和操作等,同時將地圖操作結(jié)果以圖片形式輸出到Web服務(wù)器的特定目錄之下。
GIS數(shù)據(jù)庫服務(wù)器由SpatialWare負(fù)責(zé)管理。SpatialWare是MapInfo公司最新推出的空間數(shù)據(jù)庫管理軟件,它的主要作用是把復(fù)雜的MapInfo地圖對象存入大型數(shù)據(jù)庫中,并為其建立空間數(shù)據(jù)索引,從而在數(shù)據(jù)庫服務(wù)器上實現(xiàn)對屬性數(shù)據(jù)和空間圖形對象數(shù)據(jù)的統(tǒng)一管理。
3 關(guān)鍵技術(shù)的研究與開發(fā)
基于MapXtreme的WebGIS應(yīng)用方案具有平臺獨立性和平衡高效的計算負(fù)載等特點,使用Java技術(shù)在服務(wù)器端開發(fā)Java Servlet程序。MapXtreme作為一個Servlet與Web服務(wù)器相連接,通過地圖引擎來向應(yīng)用程序提供可供程序腳本語言使用的地圖對象、屬性和方法。開發(fā)中涉及的關(guān)鍵技術(shù)有以下幾項。
3.1 客戶端與服務(wù)器端通信的實現(xiàn)
客戶端和服務(wù)器端之間的通信是通過HTTP協(xié)議來完成的。所有HTTP通信都使用8位字符,以確保二進(jìn)制編碼文件的安全傳輸。系統(tǒng)采用了一種稱之為隧道技術(shù)的處理方式。隧道可以被看作一條這樣的通道:它使用己存在的通信通道HTTP,并在其中創(chuàng)建一個子協(xié)議來執(zhí)行特殊任務(wù)。這里要創(chuàng)建的子協(xié)議將包含所有必要的信息,這些信息被用來創(chuàng)建一個Web服務(wù)器上的對象,調(diào)用這個對象中的方法,并將結(jié)果返回給客戶端。使用HTTP隧道的優(yōu)點就是可以將精力集中在子協(xié)議上面,而不用關(guān)注如何在客戶端和服務(wù)器之間傳送數(shù)據(jù)包。
在客戶端和服務(wù)器端之間傳送一條請求要經(jīng)過很多工序。出于性能上考慮,應(yīng)該在每次請求/響應(yīng)中傳輸盡可能多的信息??蛻舳撕头?wù)器端之間的1次完整通信具體包含以下的步驟:
(1) 打開HTTP連接:HTTP是一種無狀態(tài)的協(xié)議,即每一個請求都被視為一個獨立的實體。因此,對于每一個請求都要建立一個新連接。
(2)初始化方法請求:用來描述調(diào)用什么方法和方法所需要的參數(shù)。
(3)設(shè)置HTTP請求頭:包含發(fā)送的數(shù)據(jù)類型和長度。
(4)發(fā)送請求:將二進(jìn)制數(shù)據(jù)流發(fā)送到服務(wù)器。
(5)讀取請求:目標(biāo)Servlet程序?qū)⒈徽{(diào)用,并接收HTTP請求數(shù)據(jù)。Servlet程序就是調(diào)用所有必要的參數(shù)選擇相應(yīng)的方法。如果這是客戶端的第一次請求,一個服務(wù)器對象的新的實例就會被創(chuàng)建。
(6)調(diào)用方法:方法將會被服務(wù)器端的對象所調(diào)用。
(7)初始化方法響應(yīng):如果調(diào)用的方法拋出一個異常,客戶將接收到出錯信息;否則,返回的類型將會被發(fā)送。
(8) 設(shè)置HTTP響應(yīng)頭:與設(shè)置HTTP請求頭一樣,在響應(yīng)頭中要設(shè)置待發(fā)送數(shù)據(jù)的類型和長度。
(9) 發(fā)送響應(yīng):二進(jìn)制數(shù)據(jù)流將從Web服務(wù)器發(fā)送回給客戶端。
(10) 關(guān)閉連接。
3.2 GIS數(shù)據(jù)庫結(jié)構(gòu)的設(shè)計
數(shù)據(jù)庫的合理構(gòu)建是進(jìn)行監(jiān)控管理的前提。系統(tǒng)采用SQL Server作為GIS數(shù)據(jù)庫,其中包括空間數(shù)據(jù)庫和屬性數(shù)據(jù)庫2部分。空間數(shù)據(jù)庫采用非關(guān)系數(shù)據(jù)結(jié)構(gòu),將地圖信息和直放站的地理信息以MapInfo的自定義格式保存于若干文件中;屬性數(shù)據(jù)庫采用關(guān)系數(shù)據(jù)結(jié)構(gòu),將與地理信息無關(guān)的直放站參數(shù)信息和操作信息存儲在若干屬性表中??臻g數(shù)據(jù)庫與屬性數(shù)據(jù)庫采用間接關(guān)聯(lián)的方式,二者通過一定的索引機(jī)制聯(lián)系起來,如圖5所示。
評論