曹威++劉江++楊維發(fā)++劉夢雨
摘 要
為了更好的適應(yīng)氣象信息傳輸業(yè)務(wù)的不斷發(fā)展,保證氣象信息的傳輸能夠滿足預(yù)報預(yù)測業(yè)務(wù)不斷提升的需求,結(jié)合湖北省氣象信息傳輸業(yè)務(wù)的實(shí)際情況,針對目前傳輸監(jiān)控業(yè)務(wù)存在的不足,設(shè)計集約化、模塊化、可擴(kuò)展的平臺架構(gòu),建立集監(jiān)控報警、應(yīng)急處理、業(yè)務(wù)管理等功能于一體的氣象信息傳輸監(jiān)控與處理平臺,將以往分散的監(jiān)控資源加以集成和優(yōu)化,實(shí)現(xiàn)業(yè)務(wù)流程的信息化管理,有效的提升氣象信息傳輸監(jiān)控處理的時效性,為業(yè)務(wù)的開展提供有力的支撐。
【關(guān)鍵詞】氣象信息傳輸 監(jiān)控報警 應(yīng)急處置 關(guān)鍵技術(shù)實(shí)現(xiàn)
1 引言
隨著氣象現(xiàn)代化進(jìn)程的快速推進(jìn),氣象探測數(shù)據(jù)、預(yù)報預(yù)測產(chǎn)品的種類不斷增多,各項業(yè)務(wù)開展對氣象信息的時效性、準(zhǔn)確性的需求也在不斷提高,因此對氣象信息傳輸?shù)娜姹O(jiān)控、實(shí)時報警、及時處置對于提高信息傳輸及時率,保障預(yù)報預(yù)測業(yè)務(wù)的順利開展具有重要的意義。
依托歷年自主研發(fā)、課題項目以及新一代通信系統(tǒng)的本地化,湖北省氣象信息與技術(shù)保障中心已經(jīng)基本實(shí)現(xiàn)了對全省各類氣象信息傳輸?shù)谋O(jiān)控、報警以及應(yīng)急處置等功能,但仍然在以下幾個方面存在著不足。
(1)監(jiān)控系統(tǒng)數(shù)量多、形式多,且大部分系統(tǒng)沒有實(shí)現(xiàn)報警功能,在實(shí)際業(yè)務(wù)使用尤其是在處理傳輸突發(fā)情況時,調(diào)用起來較為麻煩,不能快速的定位故障來源,降低了應(yīng)急處置速度。
(2)監(jiān)控業(yè)務(wù)管理信息化較低,很多業(yè)務(wù)管理工作還停留在紙質(zhì)化、人工化的階段,數(shù)據(jù)記錄不統(tǒng)一規(guī)范,可用性較差;此外,在后期的管理和對信息的應(yīng)用時,會出現(xiàn)重復(fù)勞動,增加業(yè)務(wù)管理人員的工作量和工作時間,且容易出現(xiàn)錯誤。
(3)目前監(jiān)控系統(tǒng)在運(yùn)行穩(wěn)定性、可靠性以及人機(jī)交互性上還存在著一些不足,各系統(tǒng)間的協(xié)調(diào)運(yùn)作以及調(diào)用還不完善,對提高響應(yīng)時間、提升處置效率有一定的影響。
基于以上現(xiàn)狀,本文將結(jié)合中心現(xiàn)有業(yè)務(wù)系統(tǒng)以及不斷發(fā)展的業(yè)務(wù)需求,設(shè)計一套集約化的氣象信息監(jiān)控與處理平臺,并對其關(guān)鍵技術(shù)的實(shí)現(xiàn)進(jìn)行闡述。
2 設(shè)計思路及原則
依托新一代通信系統(tǒng)的監(jiān)控數(shù)據(jù)庫,結(jié)合現(xiàn)有的各業(yè)務(wù)系統(tǒng),遵循以下設(shè)計原則,通過整合、研發(fā),建立一套滿足業(yè)務(wù)需求的氣象信息傳輸監(jiān)控與處理平臺。
2.1 集約性
通過集約的界面,對現(xiàn)有的氣象資料傳輸進(jìn)行集中監(jiān)控以及對現(xiàn)有監(jiān)控系統(tǒng)的集中調(diào)用。
2.2 模塊低耦合性
采用模塊化的設(shè)計方式,將平臺分割為若干功能相對獨(dú)立的模塊,加強(qiáng)模塊功能的內(nèi)聯(lián)性,同時減少模塊間的耦合性,方便開發(fā)和維護(hù)。
2.3 人機(jī)交互性
在界面接口的設(shè)計上,充分考慮用戶的操作便捷性,在保證功能實(shí)現(xiàn)的前提下,簡化操作流程,提升業(yè)務(wù)開展的效率。
2.4 穩(wěn)定及可靠性
在研發(fā)過程中,充分考慮各功能模塊的之間的協(xié)調(diào)性以及模塊自身的穩(wěn)定性,加強(qiáng)系統(tǒng)的容錯能力,保證系統(tǒng)的穩(wěn)定可靠運(yùn)行。
2.5 可擴(kuò)展性
通過預(yù)留擴(kuò)展接口、采用可自定義的配置文件等方式,提升系統(tǒng)的可擴(kuò)展性,使系統(tǒng)具有較長的生命周期。
3 系統(tǒng)結(jié)構(gòu)設(shè)計
不同于基于B/S結(jié)構(gòu)的信息發(fā)布系統(tǒng)或信息管理系統(tǒng),氣象信息傳輸監(jiān)控業(yè)務(wù)相對來說更具專業(yè)性,設(shè)計到的業(yè)務(wù)人員范圍較窄,因此該平臺采用C/S結(jié)構(gòu)作為系統(tǒng)的架構(gòu),其主要結(jié)構(gòu)如圖1所示。
4 系統(tǒng)功能模塊設(shè)計
系統(tǒng)平臺主要由業(yè)務(wù)平臺主程序、應(yīng)用軟件工具集、后臺業(yè)務(wù)處理進(jìn)程三部分組成,各部分功能如圖2所示。
4.1 業(yè)務(wù)平臺主程序
業(yè)務(wù)平臺主程序是整個業(yè)務(wù)平臺與用戶主要交互的人機(jī)界面,它相當(dāng)于業(yè)務(wù)平臺的信息顯示和各子功能模塊調(diào)度的平面,其主要功能包括應(yīng)用程序調(diào)度控制、監(jiān)控信息監(jiān)測報警、詳細(xì)監(jiān)控信息顯示等功能。應(yīng)用程序調(diào)度控制:根據(jù)用戶的需求,將應(yīng)用軟件工具集中的子程序模塊訂制成快捷按鈕,集成顯示在主程序上,方便用戶快速調(diào)用,提高操作速度和便捷性。
4.1.1 集中監(jiān)控報警
按照監(jiān)控業(yè)務(wù)的流程,將各類資料的實(shí)時傳輸情況以及關(guān)鍵信息(時次、到報率、收發(fā)情況等)以動態(tài)圖示的方式進(jìn)行分別顯示,在某類資料傳輸出現(xiàn)問題(缺報、收發(fā)異常等)進(jìn)行實(shí)時的聲光信息報警,提醒值班人員及時處理。
4.1.2 監(jiān)控信息調(diào)用顯示
值班人員能夠在集中監(jiān)控報警的界面中,直接調(diào)閱查看某類資料詳細(xì)的傳輸情況,包括已有的監(jiān)控頁面、后期開發(fā)的數(shù)據(jù)查詢表格等,無需像以往那樣在收藏夾中手動打開相關(guān)網(wǎng)頁或調(diào)用監(jiān)控客戶端查看監(jiān)控信息,提升工作效率。
4.1.3 處置情況記錄
系統(tǒng)能夠自動或通過值班員手動調(diào)用電子日志工具,提供標(biāo)準(zhǔn)規(guī)范的數(shù)據(jù)錄入接口,對報警或突發(fā)情況的處置情況進(jìn)行記錄,方便后期對處置情況的查詢?nèi)∽C以及值班日志的自動生成。
4.2 應(yīng)用軟件工具集
應(yīng)用軟件工具集將業(yè)務(wù)工作中較為獨(dú)立、主要用于輔助監(jiān)控業(yè)務(wù)開展的相關(guān)功能,以獨(dú)立的應(yīng)用軟件實(shí)現(xiàn),并在業(yè)務(wù)平臺主程序中集成快捷調(diào)用的接口,提升整個業(yè)務(wù)平臺軟件的運(yùn)行效率,減少將所有功能集中在一個程序中帶來的不穩(wěn)定性。應(yīng)用軟件工具集主要包括以下子應(yīng)用程序模塊。
4.2.1 交接班管理
實(shí)現(xiàn)值班人員信息管理,值班人員交接班登錄、前班沿革信息記錄傳遞等功能,規(guī)范值班流程。
4.2.2 快速撥號工具
通過USB電話盒,通過電腦軟件直接控制座機(jī)電話,實(shí)現(xiàn)一鍵快速撥號,并記錄撥號信息,減少值班員查找號碼信息、手動撥號耗費(fèi)的時間,提升處理響應(yīng)速度。
4.2.3 資料補(bǔ)調(diào)傳輸工具
在臺站無法上傳資料或出現(xiàn)省級故障時,為用戶提供手動補(bǔ)調(diào)或錄入相關(guān)數(shù)據(jù)并上傳的功能,保障傳輸?shù)募皶r率。
4.2.4 電子日志工具
實(shí)現(xiàn)過去紙質(zhì)日志的電子化,值班員能夠選擇設(shè)定好的故障及處理結(jié)果選項快速錄入值班處理記錄,也能夠根據(jù)實(shí)際情況手動輸入值班處理記錄,相比紙質(zhì)記錄,電子記錄具有更規(guī)范的日志格式,方便用戶查詢檢索;此外,通過電子日志記錄工具,能夠?qū)崿F(xiàn)每日值班報表的自動生成,提升報表信息可讀性,減少手工填寫報表造成的失誤,并能通過內(nèi)置的NOTES模塊直接快速發(fā)送至指定聯(lián)系人,使業(yè)務(wù)流程更加集中和流暢。
4.2.5 統(tǒng)計分析工具
根據(jù)數(shù)據(jù)庫中的電子日志記錄,能夠按照用戶的查詢條件,對日志記錄進(jìn)行檢索,能夠快速的定位某一條日志,或者統(tǒng)計某段時間內(nèi)的相關(guān)統(tǒng)計分析數(shù)據(jù),方便業(yè)務(wù)人員查找錯情、分析總結(jié)問題。
4.2.6 值班管理
實(shí)現(xiàn)對值班員信息及權(quán)限的管理;實(shí)現(xiàn)班表制作、夜班費(fèi)統(tǒng)計等功能,進(jìn)一步減少業(yè)務(wù)管理人員重復(fù)、手工的工作。
4.2.7 其他外接工具
能夠通過配置文件,將其他外接工具掛接之業(yè)務(wù)平臺主程序,方便調(diào)用。
4.3 后臺監(jiān)控進(jìn)程
由于監(jiān)控業(yè)務(wù)對實(shí)時性的需求,需要業(yè)務(wù)平臺具備較高的可靠性和穩(wěn)定性,由于對各類資料的監(jiān)測需要消耗較多本地運(yùn)行服務(wù)器及數(shù)據(jù)庫端的資源,且很多監(jiān)控的時次都較為集中,如將所有監(jiān)控都由主程序?qū)崿F(xiàn),將會帶來主程序進(jìn)程負(fù)載過重而導(dǎo)致整個業(yè)務(wù)平臺操作卡頓甚至軟件無響應(yīng)的情況,因此對每類資料的監(jiān)控,均采用單獨(dú)的后臺業(yè)務(wù)處理進(jìn)程來實(shí)現(xiàn),各業(yè)務(wù)進(jìn)程對新一代通信系統(tǒng)監(jiān)控的情況進(jìn)行定時查詢,將查詢到的監(jiān)控情況實(shí)時發(fā)送至業(yè)務(wù)平臺主程序進(jìn)行顯示。采用此方式的好處包括:
(1)某一個資料的監(jiān)控進(jìn)程出現(xiàn)問題,也不會影響到其他進(jìn)程和主程序的運(yùn)行,減少單點(diǎn)故障導(dǎo)致全局崩潰的風(fēng)險;
(2)只用對出現(xiàn)問題的監(jiān)控進(jìn)程進(jìn)行處理修復(fù),減少故障排查的時間;
(3)在新增資料需要監(jiān)控時,只需按照與主程序間通信的格式,開發(fā)新的監(jiān)控進(jìn)程即可,方便后期的升級維護(hù)和二次開發(fā)。
5 關(guān)鍵技術(shù)實(shí)現(xiàn)
5.1 開發(fā)及運(yùn)行環(huán)境
5.1.1 開發(fā)平臺
采用C#語言進(jìn)行開發(fā),開發(fā)工具使用Visual Studio 2010。
5.1.2 數(shù)據(jù)庫平臺
采用MySQL數(shù)據(jù)庫,其具有體積小、速度快、使用免費(fèi)等特點(diǎn)。
5.1.3 報表軟件
采用Microsoft Office Excel作為報表數(shù)據(jù)的格式。
5.1.4 操作系統(tǒng)
采用Windows 7(32bit)作為系統(tǒng)運(yùn)行平臺。
5.2 數(shù)據(jù)庫熱備
由于MySQL數(shù)據(jù)庫不同于Microsoft的SQL SERVER,其沒有增量備份機(jī)制,因此為了保證整個業(yè)務(wù)平臺穩(wěn)定持續(xù)的運(yùn)行以及相關(guān)數(shù)據(jù)的可靠存儲,對系統(tǒng)數(shù)據(jù)庫進(jìn)行雙數(shù)據(jù)庫熱備,其主要原理是把主數(shù)據(jù)庫的所有的數(shù)據(jù)同時寫到備份數(shù)據(jù)庫中,以保證兩個數(shù)據(jù)庫的熱備同步。雙數(shù)據(jù)庫熱備的主要操作如下:
(1)確定主從數(shù)據(jù)庫版本均高于3.2,并配置好兩個數(shù)據(jù)庫各自的環(huán)境變量;
(2)設(shè)置主數(shù)據(jù)庫配置文件“my.ini”,并重啟組數(shù)據(jù)庫服務(wù),如圖3;
(3)設(shè)置從數(shù)據(jù)庫配置文件“my.ini”,并重啟組數(shù)據(jù)庫服務(wù),如圖4;
(4)執(zhí)行熱備同步命令(IP、用戶名、密碼根據(jù)實(shí)際情況填寫),如圖5;
(5)檢查設(shè)置狀態(tài),查看Slave_IO_Running、Slave_SQL_Running兩項狀態(tài)為“YES”即表示設(shè)置成功。
5.3 前后臺進(jìn)程間通信
由于平臺設(shè)計了后臺監(jiān)控進(jìn)程,其定時將監(jiān)控信息發(fā)送至前臺程序進(jìn)行解析顯示,因此需要一個有效的通信機(jī)制用于兩個進(jìn)程之間的數(shù)據(jù)交換。在綜合分析了通信所需的及時性、穩(wěn)定性、實(shí)現(xiàn)難度等方面,沒有采用數(shù)據(jù)庫共享、文本共享、Windows自定義消息以及Microsoft提供的MSMQ隊列消息機(jī)制,而是通過編寫自定義的UDP(用戶數(shù)據(jù)報協(xié)議)通信控件,來實(shí)現(xiàn)進(jìn)程間消息的通信。
雖然UDP是一個面向非連接,不可靠的通信協(xié)議,但是考慮到監(jiān)控平臺是在局域網(wǎng)內(nèi)運(yùn)行,具有穩(wěn)定的網(wǎng)絡(luò)環(huán)境且傳輸?shù)南Ⅲw積小,傳輸抽樣較高,可以滿足系統(tǒng)功能的需求;此外,通過將設(shè)置IP、監(jiān)聽端口、消息發(fā)送和讀取等相關(guān)通信方法封裝成一個自定義的控件“UDPSocket”,在開發(fā)前后臺進(jìn)程時,直接將控件拖入窗口,進(jìn)行基本設(shè)置后,即可方便的調(diào)用,極大的提高了開發(fā)的效率。
5.4 多線程編程
由于主程序界面是用戶與系統(tǒng)交流的主要人機(jī)交互接口,需要具備良好的可操作性及用戶體驗(yàn)性,過去單線程編寫的程序,在程序進(jìn)行較大量數(shù)據(jù)處理時,會出現(xiàn)暫停響應(yīng)的情況,用戶體驗(yàn)感較差,因此主程序在調(diào)用方法時,使用多線程編程來保證與用戶交互的流暢性。
開發(fā)過程中使用Visual Studio開發(fā)工具提供的“BackgroundWorker”多線程控件來實(shí)現(xiàn)多線程的調(diào)用。通過加載該控件的實(shí)例,可以實(shí)現(xiàn)后臺異步方法的調(diào)用、線程進(jìn)度的顯示、后臺進(jìn)程的操控以及線程運(yùn)行結(jié)果的反饋等功能,有效的解決了數(shù)據(jù)庫讀取、并發(fā)報警等操作對用戶前臺交互的影響。
5.5 報表生成
平臺相關(guān)的報表,如每日值班電子日志等,采用的是Excel表格格式的輸出。首先建立報表Excel格式模板,規(guī)劃好標(biāo)題、表頭等基本屬性,然后在程序中通過加載COM組建的引用(Microsoft Office 11.0 Object Library ),調(diào)用相關(guān)表格編輯的方法,加載并填充報表模板,對格式進(jìn)行調(diào)整,然后輸出做好的報表至指定目錄,以實(shí)現(xiàn)復(fù)雜報表的自動生成,規(guī)范統(tǒng)一報表的格式。
6 結(jié)語
本文簡要闡述了湖北省氣象信息傳輸監(jiān)控與處理平臺的研發(fā)背景,介紹了其設(shè)計思路及平臺的整體結(jié)構(gòu)和功能模塊,并就研發(fā)過程中涉及到的關(guān)鍵技術(shù)進(jìn)行了簡要的說明,通過該平臺的建設(shè),將以往分散的監(jiān)控資源加以集成和優(yōu)化,實(shí)現(xiàn)業(yè)務(wù)流程的信息化管理,建立起穩(wěn)定、便捷、可靠的業(yè)務(wù)系統(tǒng),將有效的提升氣象信息傳輸監(jiān)控處理的時效性,為業(yè)務(wù)的開展提供有力的支撐。
參考文獻(xiàn)
[1]鐘靜,李赟,陳海濤,楊宏宇.基于SMS技術(shù)的氣象報文監(jiān)控設(shè)計與實(shí)現(xiàn)[J].貴州氣象,2011(04).
[2]郭振武.基于SOCKET及SMS技術(shù)的遠(yuǎn)程信息傳輸系統(tǒng)的設(shè)計[D].杭州:浙江大學(xué),2004.
[3]李德泉,何文春,阮宇智,劉一鳴.氣象實(shí)時數(shù)據(jù)庫服務(wù)監(jiān)控系統(tǒng)設(shè)計與實(shí)現(xiàn)[J].成都信息工程學(xué)院學(xué)報,2012(02).
[4]華連生.省級氣象探測資料集成系統(tǒng)設(shè)計[D].合肥:合肥工業(yè)大學(xué),2010.
[5]富元,呂建新.基于UDP的可靠傳輸協(xié)議的研究與實(shí)現(xiàn).光通信研究,2009(05).
[6]高東日,魏海平,楊建功,王福威. 基于UDP協(xié)議的內(nèi)外網(wǎng)通信實(shí)施方案[J].遼寧石油化工大學(xué)學(xué)報,2005(04):75-78.
[7]梁海河,孟昭林 ,張春暉,李雁. 綜合氣象觀測運(yùn)行監(jiān)控系統(tǒng)[J].氣象,2011(10):1292-1300.
[8]張宇.成都?xì)庀髷?shù)據(jù)庫監(jiān)控系統(tǒng)的設(shè)計與實(shí)現(xiàn)[J].高原山地氣象研究,2014(01):86-89.
[9]楊濤,徐光耀.自動氣象站數(shù)據(jù)傳輸監(jiān)控報警軟件[J].氣象水文海洋儀器,2013(02):84-86.
[10]裴翀,宋連春,吳可軍,李雁,李巍,邵楠.我國綜合氣象觀測運(yùn)行監(jiān)控系統(tǒng)的設(shè)計與實(shí)踐[J].氣象,2011(02):213-218.