賈棟祥 楊從從 韓凌國(guó)



摘? 要:為了解決氣象服務(wù)器在發(fā)布信息時(shí)出現(xiàn)發(fā)布等待響應(yīng)或后臺(tái)崩潰等問(wèn)題,利用PHP語(yǔ)言完成氣象服務(wù)器監(jiān)測(cè)系統(tǒng)的設(shè)計(jì),實(shí)現(xiàn)對(duì)氣象服務(wù)器(采集服務(wù)器、預(yù)警服務(wù)器、上報(bào)服務(wù)器)和氣象設(shè)備的運(yùn)行狀態(tài)實(shí)時(shí)監(jiān)測(cè),從而為氣象業(yè)務(wù)工作提供技術(shù)保障。
關(guān)鍵詞:監(jiān)測(cè);服務(wù)器;氣象信息
引言
氣象服務(wù)器承載著氣象關(guān)鍵數(shù)據(jù)的存儲(chǔ)與應(yīng)用,服務(wù)器運(yùn)行環(huán)境的優(yōu)化和日常維護(hù)水平對(duì)其穩(wěn)定性起關(guān)鍵作用。
氣象服務(wù)器要實(shí)時(shí)接收不同來(lái)源數(shù)據(jù),這些數(shù)據(jù)經(jīng)過(guò)服務(wù)器的計(jì)算處理后提供給氣象預(yù)報(bào)業(yè)務(wù)使用。氣象預(yù)報(bào)員利用處理后的數(shù)據(jù)進(jìn)行天氣分析,得出預(yù)報(bào)結(jié)論。服務(wù)器計(jì)算處理的數(shù)據(jù)通過(guò)預(yù)報(bào)員的分析加工最后制作成各種氣象數(shù)據(jù)“產(chǎn)品”,以多種形式提供給不同的服務(wù)對(duì)象。這些業(yè)務(wù)過(guò)程的實(shí)現(xiàn)都有賴于服務(wù)器操作系統(tǒng)及其服務(wù)器上運(yùn)行的各種氣象業(yè)務(wù)平臺(tái)正常運(yùn)行。
1系統(tǒng)功能
服務(wù)器的穩(wěn)定運(yùn)行是氣象業(yè)務(wù)正常開(kāi)展的有力保障。氣象發(fā)布服務(wù)器再極端天氣(氣象災(zāi)害)大面積出現(xiàn)時(shí),涉及很多部門(mén)很多崗位要發(fā)布?xì)庀螅A(yù)警)服務(wù)信息,會(huì)承受較大壓力,往往出現(xiàn)發(fā)布等待較長(zhǎng)時(shí)間或發(fā)布崩潰等問(wèn)題,發(fā)布效率顯著下降。本監(jiān)測(cè)系統(tǒng)重點(diǎn)對(duì)氣象服務(wù)器的運(yùn)行狀態(tài)進(jìn)行監(jiān)測(cè),通過(guò)郵件、電話撥打的方式對(duì)管理員進(jìn)行狀態(tài)上報(bào),系統(tǒng)功能如圖1所示。不限監(jiān)控區(qū)域,不限監(jiān)控?cái)?shù)量,可同時(shí)監(jiān)控機(jī)房所有服務(wù)器及設(shè)備。
如果服務(wù)器發(fā)生離線或者宕機(jī),將在第一時(shí)間上報(bào)給管理員。另一方面,如果發(fā)生網(wǎng)絡(luò)故障,將自動(dòng)切換至備用網(wǎng)絡(luò),保證數(shù)據(jù)的連續(xù)性。
2技術(shù)支持
氣象服務(wù)檢測(cè)系統(tǒng)通過(guò)監(jiān)控端對(duì)采集服務(wù)器、預(yù)警服務(wù)器、上報(bào)服務(wù)器和氣象設(shè)備進(jìn)行監(jiān)測(cè),通過(guò)郵件和電話的方式與用戶溝通。實(shí)現(xiàn)監(jiān)測(cè)和通訊功能需要多組件和技術(shù)的支持。
1)網(wǎng)絡(luò)故障監(jiān)測(cè)組件
基于TCP/IP網(wǎng)絡(luò)協(xié)議,對(duì)單臺(tái)計(jì)算機(jī)的網(wǎng)絡(luò)故障進(jìn)行監(jiān)測(cè)。其中包括網(wǎng)絡(luò)連接、數(shù)據(jù)包發(fā)送情況。
2)計(jì)算機(jī)故障監(jiān)測(cè)組件
運(yùn)行于操作系統(tǒng)之上,在服務(wù)器發(fā)生軟硬件故障時(shí),發(fā)送數(shù)據(jù)。
3)計(jì)算機(jī)故障注冊(cè)及心跳數(shù)據(jù)接收服務(wù)
接收來(lái)自客戶端的自動(dòng)注冊(cè),并自動(dòng)監(jiān)測(cè)心跳連接。在某臺(tái)客戶端發(fā)生故障后,進(jìn)行日志記錄和報(bào)警操作。
4)根據(jù)硬件ID和計(jì)算機(jī)IP進(jìn)行心跳自動(dòng)注冊(cè)及發(fā)送服務(wù)
自動(dòng)獲取硬件ID和計(jì)算機(jī)IP,搜索內(nèi)網(wǎng)的監(jiān)測(cè)服務(wù),并進(jìn)行自動(dòng)注冊(cè)。注冊(cè)完成后,根據(jù)監(jiān)測(cè)端設(shè)置,定時(shí)發(fā)送心跳數(shù)據(jù)。
5)USB驅(qū)動(dòng)檢測(cè)技術(shù)
檢測(cè)連接至USB端口的安卓設(shè)備,并自動(dòng)安裝相應(yīng)驅(qū)動(dòng)。
6)安卓SDK通訊技術(shù)
連接安卓設(shè)備,并通過(guò)安卓SDK操作設(shè)備,進(jìn)行撥號(hào)和短信發(fā)送的操作。獲取撥號(hào)和短信發(fā)送狀態(tài),并存入日志。
3項(xiàng)目架構(gòu)
系統(tǒng)由監(jiān)控端、客戶端兩個(gè)部分組成,工作原理如圖2所示。監(jiān)控端負(fù)責(zé)服務(wù)器狀態(tài)變化監(jiān)測(cè),客戶端負(fù)責(zé)網(wǎng)絡(luò)異常的處理。
3.1監(jiān)控端
采用Soket進(jìn)行主動(dòng)監(jiān)聽(tīng)服務(wù)器,同時(shí)支持ping,端口監(jiān)測(cè)及http監(jiān)測(cè)。如圖3所示,支持多種類(lèi)型的設(shè)備及操作系統(tǒng)。如果業(yè)務(wù)服務(wù)器發(fā)生故障,將調(diào)用郵件發(fā)送服務(wù)及撥號(hào)服務(wù),發(fā)送信息及撥號(hào)通知。
3.2客戶端
主動(dòng)監(jiān)聽(tīng)上級(jí)數(shù)據(jù)服務(wù)器。發(fā)生數(shù)據(jù)傳輸故障,自動(dòng)切換備用網(wǎng)絡(luò)進(jìn)行連接。
4結(jié)論
氣象服務(wù)檢測(cè)系統(tǒng)運(yùn)用硬件ID和計(jì)算機(jī)IP進(jìn)行心跳自動(dòng)注冊(cè)及發(fā)送服務(wù),采用USB驅(qū)動(dòng)檢測(cè)和安卓SDK通訊技術(shù)實(shí)現(xiàn)相應(yīng)功能。應(yīng)用到氣象服務(wù)工作中,能夠?yàn)闅庀蠓?wù)器穩(wěn)定運(yùn)行提供保障。