【摘 要】自2012年4月正式運(yùn)行至今3年多來(lái),水情信息交換系統(tǒng)充分利了計(jì)算機(jī)網(wǎng)絡(luò)優(yōu)勢(shì),使信息報(bào)送方式和效率得到改善和提高,為防汛抗旱提供了及時(shí)、科學(xué)的依據(jù),在防汛抗旱中發(fā)揮了重要作用。本文介紹水情信息交換系統(tǒng)的結(jié)構(gòu),分析了報(bào)汛數(shù)據(jù)收發(fā)流程,對(duì)日常工作中出現(xiàn)的交換異常問(wèn)題進(jìn)行分析,提出水情信息交換系統(tǒng)的故障處理方法。
【關(guān)鍵詞】水情信息交換 原理 故障 處理
1 概述
水情信息收集傳輸是水文情報(bào)預(yù)報(bào)工作重要環(huán)節(jié),要充分研究和利用數(shù)據(jù)庫(kù)和網(wǎng)絡(luò)技術(shù),努力采用信息交換方式實(shí)現(xiàn)各級(jí)水情部門(mén)數(shù)據(jù)與數(shù)據(jù)庫(kù)之間水情信息傳輸和共享,提高水情信息收集傳輸技術(shù)整體水平,為進(jìn)一步推進(jìn)水文情報(bào)預(yù)報(bào)工作奠定堅(jiān)實(shí)基礎(chǔ)。
以往報(bào)汛時(shí)人員投入大、占用時(shí)間多、解決問(wèn)題慢,錯(cuò)報(bào)、漏報(bào)、遲報(bào)現(xiàn)象,沒(méi)有充分利用計(jì)算機(jī)網(wǎng)絡(luò)優(yōu)勢(shì),無(wú)法實(shí)時(shí)報(bào)送基本信息、預(yù)報(bào)信息、統(tǒng)計(jì)信息,沒(méi)有統(tǒng)一譯電軟件等報(bào)汛問(wèn)題。水利部水文局于2010年開(kāi)發(fā)研制水情信息交換系統(tǒng)。菏澤水文局于2011年12月1日至2012年3月31日試運(yùn)行水情信息交換系統(tǒng),水情信息交換系統(tǒng)不再采用《水情信息編碼標(biāo)準(zhǔn)》(SL330-2005)進(jìn)行數(shù)據(jù)交換,而是直接基于數(shù)據(jù)庫(kù)進(jìn)行水情數(shù)據(jù)交換。省去了編碼、譯電過(guò)程,交換效率明顯提升,故障率大為減少。
自2012年4月正式運(yùn)行至今3年多來(lái),水情信息交換系統(tǒng)充分利了計(jì)算機(jī)網(wǎng)絡(luò)優(yōu)勢(shì),使信息報(bào)送方式和效率得到改善和提高,為防汛抗旱提供了及時(shí)、科學(xué)的依據(jù),在防汛抗旱中發(fā)揮了重要作用。
2 水情信息交換系統(tǒng)介紹
2.1系統(tǒng)結(jié)構(gòu)
水情信息交換系統(tǒng)基于DotNet Framework技術(shù)框架,采用Web Service技術(shù),實(shí)現(xiàn) “實(shí)時(shí)雨水情數(shù)據(jù)庫(kù)表結(jié)構(gòu)與標(biāo)識(shí)符標(biāo)準(zhǔn)”(SL323-2011)中基本信息類、實(shí)時(shí)信息類、預(yù)報(bào)信息類、統(tǒng)計(jì)信息類表單中數(shù)據(jù)的實(shí)時(shí)交換功能。利用Ajax技術(shù),實(shí)現(xiàn)良好的界面交互效果。
由于系統(tǒng)沒(méi)有采用第三方軟件,避免了實(shí)施過(guò)程中的額外支出。軟件系統(tǒng)架構(gòu)采用了MVC三層結(jié)構(gòu)設(shè)計(jì),層次和邏輯清晰,降低了系統(tǒng)開(kāi)發(fā)和維護(hù)的成本,同時(shí)提高了系統(tǒng)的可擴(kuò)展性(見(jiàn)圖1)。
2.2 系統(tǒng)特點(diǎn)
2.2.1 部署簡(jiǎn)便易行
系統(tǒng)需要在分中心、?。ㄊ?、區(qū))中心、流域、中央多級(jí)部署,在推廣實(shí)施過(guò)程中做到低成本、易安裝、易維護(hù)。
2.2.2 業(yè)務(wù)覆蓋全面
當(dāng)前全國(guó)范圍實(shí)時(shí)雨水情數(shù)據(jù)庫(kù)存在Oracle、SQL Server、Sybase三種不同類型的數(shù)據(jù)庫(kù),所以系統(tǒng)具備在三種不同數(shù)據(jù)庫(kù)之間進(jìn)行數(shù)據(jù)交互的功能。系統(tǒng)具有實(shí)時(shí)監(jiān)控、統(tǒng)計(jì)分析的功能,同時(shí)能夠應(yīng)對(duì)網(wǎng)絡(luò)故障、大數(shù)據(jù)量傳輸?shù)忍厥馇闆r。
2.2.3 畫(huà)面直觀,操作簡(jiǎn)單
系統(tǒng)需要在全國(guó)范圍內(nèi)部署,系統(tǒng)盡可能簡(jiǎn)化操作步驟,做到簡(jiǎn)單易行。
2.2.4 運(yùn)行穩(wěn)定可靠
系統(tǒng)保證7*24小時(shí)不間斷運(yùn)行,確保數(shù)據(jù)的正常發(fā)送。采用統(tǒng)一面向方面的框架,統(tǒng)一的異常處理、錯(cuò)誤隔離、報(bào)警、容錯(cuò)和恢復(fù)機(jī)制,盡可能地保證一個(gè)進(jìn)程故障都不會(huì)引起系統(tǒng)的癱瘓,同時(shí)也允許系統(tǒng)對(duì)部分服務(wù)做升級(jí)和維護(hù)而不影響系統(tǒng)繼續(xù)提供核心的服務(wù)。
2.3 數(shù)據(jù)交換處理過(guò)程
外部系統(tǒng)對(duì)發(fā)送節(jié)點(diǎn)實(shí)時(shí)雨水情數(shù)據(jù)庫(kù)中基本信息類、實(shí)時(shí)信息類、預(yù)報(bào)信息類、統(tǒng)計(jì)信息類的數(shù)據(jù)進(jìn)行插入(修改、刪除)操作時(shí),啟動(dòng)數(shù)據(jù)庫(kù)表的觸發(fā)器;觸發(fā)器將發(fā)生變動(dòng)的數(shù)據(jù)記錄保存到待交換信息記錄表中;系統(tǒng)定時(shí)對(duì)待交換信息記錄表進(jìn)行輪詢檢查,發(fā)現(xiàn)有待發(fā)送數(shù)據(jù)后,根據(jù)系統(tǒng)設(shè)置的轉(zhuǎn)發(fā)關(guān)系,為各接收單位生成相應(yīng)的數(shù)據(jù)文件,并啟動(dòng)發(fā)送模塊;發(fā)送模塊負(fù)責(zé)把數(shù)據(jù)文件,分別發(fā)送給各接收節(jié)點(diǎn);接收節(jié)點(diǎn)通過(guò)Web Service接口,接收上傳的文件,并啟動(dòng)入庫(kù)模塊;入庫(kù)模塊負(fù)責(zé)解讀數(shù)據(jù)文件,并把數(shù)據(jù)記錄插入到已接收信息記錄表中,同時(shí)插入(修改、刪除)相應(yīng)的基本類、實(shí)時(shí)類、預(yù)報(bào)類和統(tǒng)計(jì)類信息(如圖2)。
2.4網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
水情信息交換系統(tǒng)運(yùn)行環(huán)境的網(wǎng)絡(luò)設(shè)備主要由水情信息交換系統(tǒng)應(yīng)用服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器、監(jiān)控終端組成。系統(tǒng)應(yīng)用服務(wù)器在運(yùn)行數(shù)據(jù)輪詢程序時(shí),可同時(shí)通過(guò)IIS提供數(shù)據(jù)接收Web服務(wù)。通過(guò)軟件的配置,信息交換節(jié)點(diǎn)可以同時(shí)作為發(fā)送節(jié)點(diǎn)和接收節(jié)點(diǎn)(見(jiàn)圖3)。
3常見(jiàn)錯(cuò)誤分析
3.1系統(tǒng)不能相連
正常網(wǎng)絡(luò)相通的情況下,系統(tǒng)不能相連的原因多數(shù)是因?yàn)闆](méi)有將對(duì)方的IP地址寫(xiě)進(jìn)自己的路由信息里面去。有時(shí)也會(huì)因?yàn)樾畔⒔邮軉挝坏姆?wù)器故障、更換了IP地址等未進(jìn)行告知而導(dǎo)致與信息接受單位無(wú)法進(jìn)行聯(lián)通。
3.2文件不能正常發(fā)送
如遇到交換系統(tǒng)不對(duì)外發(fā)送文件的情況,請(qǐng)按照以下步驟檢查:
(1)查看交換系統(tǒng)監(jiān)控頁(yè)面是否有待處理信息,可進(jìn)一步從數(shù)據(jù)庫(kù)中查看待發(fā)送信息記錄表中是否有數(shù)據(jù)(ST_SENWAIT_E)(select * from st_sendwait_e)。
①若沒(méi)有待發(fā)送信息,首先檢查交換站點(diǎn)和表單是否發(fā)生變動(dòng),再檢查觸發(fā)器是否被禁用;②若有待發(fā)送信息,但監(jiān)控頁(yè)面顯示為0,系統(tǒng)統(tǒng)計(jì)待發(fā)送信息線程可能停止,重啟IIS服務(wù)(服務(wù)中World Wide Web Publishing Service)。
(2)監(jiān)控頁(yè)面顯示有待處理信息時(shí),可檢查數(shù)據(jù)庫(kù)表單中的待發(fā)送信息記錄表(ST_SENWAIT_E)中的發(fā)送流水號(hào)是否和已處理信息記錄表(ST_SENDO_E)、信息配發(fā)記錄表(ST_SENTO_E)中的發(fā)送流水號(hào)重復(fù),查到有流水號(hào)相同的記錄數(shù),直接刪除即可。(數(shù)據(jù)庫(kù)異常會(huì)導(dǎo)致待發(fā)送信息記錄表中的發(fā)送流水號(hào)字段的序列異常(oracle)或者發(fā)送流水號(hào)字增停止(SQL server),生成相同的流水號(hào))
查看是否有流水號(hào)相同的記錄數(shù):
select * from st_senddo_e where slsh in (select slsh from st_sendwait_e)
select * from st_sendto_e where slsh in (select slsh from st_sendwait_e)
刪除記錄數(shù):
delete from st_senddo_e where slsh in (select slsh from st_sendwait_e)
delete from st_sendto_e where slsh in (select slsh from st_sendwait_e)
(3 )數(shù)據(jù)庫(kù)故障。這種故障一般是服務(wù)器崩潰導(dǎo)致數(shù)據(jù)庫(kù)丟失,或因數(shù)據(jù)庫(kù)空間爆滿、硬盤(pán)損壞、核心配置參數(shù)被誤操作等造成,這就要求管理人員應(yīng)做好數(shù)據(jù)庫(kù)日常備份和維護(hù)。不僅要本機(jī)備份,而且為了防止本服務(wù)器崩潰,同時(shí)進(jìn)行異地備份。
3.3 IIS 故障
(1)文件過(guò)多過(guò)大導(dǎo)致磁盤(pán)空間溢出。在C:\Windows\sys32\LogFiles\W3svc1 目錄下每天都會(huì)產(chǎn)生大量日志文件,如不及時(shí)作刪除處理,會(huì)占用大量有磁盤(pán)空間導(dǎo)致C盤(pán)空間暴滿,IIS無(wú)法正常運(yùn)轉(zhuǎn)。
(2)Asp.net損壞導(dǎo)致交換系統(tǒng)無(wú)法啟動(dòng)。Asp.net損壞會(huì)導(dǎo)致交換系統(tǒng)出現(xiàn)“無(wú)法連接到Web Service,請(qǐng)重新連接測(cè)試”等報(bào)錯(cuò)信息。處理辦法:重新安裝Asp.net,并通“Aspnet_regiis”命令進(jìn)行重新注冊(cè)。
3.4 數(shù)據(jù)告警處理
交換系統(tǒng)每日會(huì)統(tǒng)計(jì)前一日發(fā)送/接收信息,并根據(jù)系統(tǒng)設(shè)置時(shí)間(保留7天詳細(xì)信息)自動(dòng)刪除已處理信息記錄表(ST_SENDO_E)、信息配發(fā)記錄表(ST_SENTO_E)、接收信息記錄表(ST_RECVINF_E)三張表中已統(tǒng)計(jì)的詳細(xì)信息,因?yàn)閿?shù)據(jù)庫(kù)中會(huì)出現(xiàn)一些無(wú)法統(tǒng)計(jì)的垃圾數(shù)據(jù),累計(jì)過(guò)多會(huì)影響入庫(kù)效率。當(dāng)出現(xiàn)數(shù)據(jù)警告后,需要從數(shù)據(jù)庫(kù)中手工刪除該表單中的垃圾數(shù)據(jù)(統(tǒng)計(jì)涉及ST_SENDO_E和ST_RECVINF_E 2張表單),或者數(shù)據(jù)庫(kù)入庫(kù)較慢時(shí),刪除一些已統(tǒng)計(jì)的數(shù)據(jù),減少表單的數(shù)據(jù)量。
3.5 密碼遺忘問(wèn)題
長(zhǎng)時(shí)間沒(méi)登錄交換系統(tǒng),忘記數(shù)據(jù)庫(kù)密碼事情常有發(fā)生。通過(guò)操作系統(tǒng)超級(jí)用戶登錄后,解除密碼鎖定,然后重新設(shè)置密碼。也可進(jìn)入數(shù)庫(kù)據(jù),找到保存密碼的表單進(jìn)行修改。
4 結(jié)語(yǔ)
該系統(tǒng)自投入運(yùn)行以來(lái),改善了菏澤水情分中心與省中心的水情信息傳輸效率,能夠準(zhǔn)確及時(shí)的交換、入庫(kù)各報(bào)汛站的水情信息,為水情人員及時(shí)了解實(shí)時(shí)水、雨情提供了技術(shù)保障,為防汛抗旱決策提供了及時(shí)、科學(xué)的依據(jù),在防汛抗旱中發(fā)揮了重要作用。
但作為水情信息交換系統(tǒng)的管理人員,必須熟悉交換系統(tǒng)的原理和數(shù)據(jù)流程及重要控制的表結(jié)構(gòu)內(nèi)容,才能有效地分析故障,查找問(wèn)題、解決問(wèn)題。要加強(qiáng)日常管理,自動(dòng)清除主要控制表項(xiàng)過(guò)大的記錄;制作系統(tǒng)腳本,通過(guò)計(jì)劃任務(wù)刪除過(guò)期的收發(fā)文件,以保障系統(tǒng)支行運(yùn)行足夠的空間,并定期進(jìn)行數(shù)據(jù)庫(kù)性能優(yōu)化。另外,要做好應(yīng)急備份交換系統(tǒng),在復(fù)雜故障短時(shí)間內(nèi)不能解決時(shí),可啟用備份交換系統(tǒng),以保證報(bào)汛數(shù)據(jù)的時(shí)效性和完整性。
參考文獻(xiàn):
[1]水利部水文局.水情信息交換系統(tǒng)使用手冊(cè)[S].北京:水利部水文局,2011:70-77
[2]水利部水文局.SL323-2011實(shí)時(shí)雨水情數(shù)據(jù)庫(kù)表結(jié)構(gòu)和標(biāo)識(shí)符標(biāo)準(zhǔn)[S].北京:水利部水文局,2011;28-69
作者簡(jiǎn)介:王捷音(1978—),女,漢族,山東菏澤人,本科,工程師,研究方向:水文水資源。