李濤 劉俊宏 劉寰
摘要
論文以四川省氣象局氣象觀測(cè)數(shù)據(jù)定制化推送系統(tǒng)的開(kāi)發(fā)為依托,重點(diǎn)闡述了系統(tǒng)設(shè)計(jì)與技術(shù)實(shí)現(xiàn)。綜合測(cè)試表明,推送系統(tǒng)能為用戶(hù)提供較高時(shí)效的數(shù)據(jù)推送,提高了數(shù)據(jù)共享能力,為數(shù)據(jù)服務(wù)奠定了基礎(chǔ)。
【關(guān)鍵詞】氣象觀測(cè)數(shù)據(jù) 定制化推送 信息系統(tǒng) 數(shù)據(jù)共享
目前,四川省氣象部門(mén)之間主要通過(guò)下載與提供數(shù)據(jù)中間件的方式實(shí)現(xiàn)氣象觀測(cè)數(shù)據(jù)共享。由于數(shù)據(jù)的集中下載情況普遍,中間過(guò)程較為繁瑣,導(dǎo)致數(shù)據(jù)實(shí)時(shí)性差與時(shí)效性差。鑒于此,以數(shù)據(jù)中心的“下行資料共享系統(tǒng)”為依托,使用J2EE技術(shù)開(kāi)發(fā)數(shù)據(jù)推送平臺(tái),從而實(shí)現(xiàn)資料的定向推送,保證數(shù)據(jù)的實(shí)時(shí)性與共享效果。
1系統(tǒng)概述
系統(tǒng)的目的是實(shí)時(shí)掌握傾向信息,從而提升天氣預(yù)報(bào)的準(zhǔn)確性以及災(zāi)害預(yù)警的實(shí)時(shí)性,提升氣象部門(mén)防災(zāi)減災(zāi)的決策能力,更好的服務(wù)民眾。
定制化推送要保證系統(tǒng)具備三個(gè)特點(diǎn):
(1)推送用戶(hù)精準(zhǔn),根據(jù)被推送用戶(hù)特征,定制推送不同的氣象觀測(cè)數(shù)據(jù);
(2)推送地點(diǎn)精準(zhǔn),根據(jù)被推送用戶(hù)所處地點(diǎn)不同,推薦與地點(diǎn)有關(guān)的氣象觀測(cè)信息;
(3)推送時(shí)間精準(zhǔn),做到實(shí)時(shí)推送,保證信息價(jià)值。
系統(tǒng)性能要具有四個(gè)特征:
(1)響應(yīng)時(shí)間,保證數(shù)據(jù)請(qǐng)求用戶(hù)得到數(shù)據(jù)的響應(yīng)時(shí)間在10秒以?xún)?nèi);
(2)并發(fā)性,要支持對(duì)220用戶(hù)(四川省21個(gè)市級(jí)氣象局與183個(gè)縣級(jí)氣象局)同時(shí)推送:
(3)穩(wěn)定性,保證系統(tǒng)能夠持續(xù)使用;
(4)可擴(kuò)展性,系統(tǒng)能夠隨著四川省氣象系統(tǒng)業(yè)務(wù)的變化而進(jìn)行調(diào)整。
2系統(tǒng)功能需求
開(kāi)發(fā)數(shù)據(jù)推送系統(tǒng)的目的是為實(shí)現(xiàn)氣象觀測(cè)數(shù)據(jù)的定向推送。系統(tǒng)能夠根據(jù)用戶(hù)的身份推送與之相關(guān)的數(shù)據(jù),能夠?qū)Σ煌臄?shù)據(jù)進(jìn)行分類(lèi),實(shí)現(xiàn)文件的上傳下達(dá)與儲(chǔ)存,并對(duì)系統(tǒng)的操作進(jìn)行記錄。系統(tǒng)從功能上可劃分為:用戶(hù)管理、文件管理、文件選擇與系統(tǒng)日志四大模塊。
本系統(tǒng)實(shí)現(xiàn)的推送數(shù)據(jù)包括氣象觀測(cè)數(shù)據(jù)、服務(wù)產(chǎn)品文件與相關(guān)預(yù)報(bào)產(chǎn)品。這些數(shù)據(jù)來(lái)源于省數(shù)據(jù)中心的下行文件共享系統(tǒng)。
3系統(tǒng)的設(shè)計(jì)
本系統(tǒng)采用B/S架構(gòu),使用J2EE技術(shù)與Mysql數(shù)據(jù)庫(kù)管理系統(tǒng)。架構(gòu)的設(shè)計(jì)遵從MVC設(shè)計(jì)思想。
3.1設(shè)計(jì)原則
一是頁(yè)面友好,使用方便;二是系統(tǒng)要具有良好的可擴(kuò)展性;三是系統(tǒng)要安全性強(qiáng),能夠保障用戶(hù)安全操作與數(shù)據(jù)安全。
3.2系統(tǒng)體系結(jié)構(gòu)
系統(tǒng)分為三層結(jié)構(gòu),即表現(xiàn)層、邏輯層與數(shù)據(jù)層。系統(tǒng)的數(shù)據(jù)使用集中存儲(chǔ)在數(shù)據(jù)中心,使用Mysql數(shù)據(jù)庫(kù)管理系統(tǒng),負(fù)責(zé)接收與響應(yīng)邏輯層發(fā)送的請(qǐng)求;邏輯層負(fù)責(zé)數(shù)理邏輯的提供,負(fù)責(zé)接收與響應(yīng)表現(xiàn)層發(fā)送的請(qǐng)求,負(fù)責(zé)發(fā)送請(qǐng)求到數(shù)據(jù)層并接收響應(yīng);表現(xiàn)層負(fù)責(zé)與用戶(hù)交互,負(fù)責(zé)發(fā)送用戶(hù)請(qǐng)求到邏輯層并將響應(yīng)結(jié)果反饋給用戶(hù)。
3.3系統(tǒng)靜態(tài)結(jié)構(gòu)
本系統(tǒng)的靜態(tài)結(jié)構(gòu)采用包的方式。系統(tǒng)包括四個(gè)功能模塊,每個(gè)功能模塊相對(duì)獨(dú)立。子系統(tǒng)依賴(lài)于系統(tǒng)而發(fā)揮功能作用,子系統(tǒng)之間通過(guò)功能進(jìn)行數(shù)據(jù)流交互,子系統(tǒng)之間互相配合完成各項(xiàng)功能,
3.4用戶(hù)身份認(rèn)證設(shè)計(jì)
身份認(rèn)證是本系統(tǒng)的必備功能之一。由于系統(tǒng)的目的是數(shù)據(jù)的定向推送,也就是系統(tǒng)要根據(jù)用戶(hù)的身份權(quán)限來(lái)判斷推送的數(shù)據(jù)內(nèi)容或者用戶(hù)的操作范圍。系統(tǒng)對(duì)用戶(hù)名與密碼進(jìn)行判斷,若用戶(hù)身份信息錯(cuò)誤,則進(jìn)行提示并結(jié)束操作;若身份正確,則判斷用戶(hù)的權(quán)限并將權(quán)限賦予用戶(hù),顯示用戶(hù)權(quán)限范圍內(nèi)的操作頁(yè)面。
3.5賦予用戶(hù)權(quán)限設(shè)計(jì)
完成用戶(hù)權(quán)限設(shè)置的用戶(hù)為系統(tǒng)管理員。
進(jìn)行操作時(shí)系統(tǒng)的三層結(jié)構(gòu)的工作方式與時(shí)序。系統(tǒng)管理員在系統(tǒng)的管理端登錄系統(tǒng),系統(tǒng)的管理端對(duì)用戶(hù)名與密碼進(jìn)行格式判斷;判斷合格后,向系統(tǒng)的Web服務(wù)器(邏輯層)發(fā)送身份認(rèn)證請(qǐng)求;Web服務(wù)器接收到表現(xiàn)層請(qǐng)求后,向數(shù)據(jù)庫(kù)服務(wù)器(數(shù)據(jù)層)發(fā)送登錄身份認(rèn)證請(qǐng)求;數(shù)據(jù)庫(kù)服務(wù)器對(duì)身份進(jìn)行驗(yàn)證并賦予權(quán)限。
系統(tǒng)管理員通過(guò)身份認(rèn)證后,進(jìn)入用戶(hù)管理的權(quán)限賦予模塊,選中用戶(hù)并賦予權(quán)限。系統(tǒng)表現(xiàn)層向邏輯層發(fā)送權(quán)限賦予的請(qǐng)求參數(shù);Web服務(wù)器接收到請(qǐng)求后,調(diào)用權(quán)限授予的控制類(lèi),賦予表現(xiàn)層傳遞的參數(shù),并向數(shù)據(jù)庫(kù)層發(fā)送操作請(qǐng)求;數(shù)據(jù)層接收到操作請(qǐng)求后,根據(jù)控制類(lèi)進(jìn)行操作,并將操作結(jié)果進(jìn)行反饋。
3.6數(shù)據(jù)定向推送設(shè)計(jì)
本系統(tǒng)的數(shù)據(jù)定向推送的過(guò)程為:用戶(hù)在系統(tǒng)的表現(xiàn)層發(fā)送數(shù)據(jù)推送請(qǐng)求。邏輯層接收到請(qǐng)求后,調(diào)用數(shù)據(jù)推送的控制類(lèi)并向數(shù)據(jù)層提交請(qǐng)求。數(shù)據(jù)層接受請(qǐng)求后,將要推送的文件在數(shù)據(jù)庫(kù)中添加下載權(quán)限并發(fā)送到相關(guān)用戶(hù)。
如圖1為數(shù)據(jù)推送的時(shí)序圖,本系統(tǒng)的數(shù)據(jù)推送請(qǐng)求操作類(lèi)為file_Push(),數(shù)據(jù)發(fā)送類(lèi)為file_Send(),添加推送發(fā)送的類(lèi)為aad_FileSend(),每一次數(shù)據(jù)推送操作都需要這三個(gè)類(lèi)的相互協(xié)作。
4系統(tǒng)使用效果
通過(guò)氣象觀測(cè)數(shù)據(jù)定制化推送系統(tǒng)的使用,取得了如下效果:
(1)實(shí)現(xiàn)了按需求對(duì)數(shù)據(jù)進(jìn)行定向推送,數(shù)據(jù)共享效果明顯提升;
(2)規(guī)范了用戶(hù)管理,通過(guò)制定規(guī)則實(shí)現(xiàn)用戶(hù)需求與數(shù)據(jù)的對(duì)應(yīng)關(guān)系,確保了數(shù)據(jù)的時(shí)效性;
(3)使用成熟的J2EE技術(shù)與MVC設(shè)計(jì),保證了系統(tǒng)的可擴(kuò)展性。
5結(jié)束語(yǔ)
本研究設(shè)計(jì)了一款以用戶(hù)數(shù)據(jù)需求為導(dǎo)向的氣象觀測(cè)數(shù)據(jù)定向推送系統(tǒng)。系統(tǒng)的開(kāi)發(fā)使用成熟的J2EE技術(shù)與MVC設(shè)計(jì)。系統(tǒng)的使用在保障了氣象觀測(cè)數(shù)據(jù)實(shí)時(shí)性的同時(shí)還大幅提上了數(shù)據(jù)的共享程度,為提升省局各部門(mén)之間的數(shù)據(jù)共享與使用提供便利。
參考文獻(xiàn)
[1]陸佳煒,王辰昊,肖剛,徐俊.面向多源異構(gòu)數(shù)據(jù)的云推送平臺(tái)的研究與應(yīng)用[J],計(jì)算機(jī)科學(xué),2016 (Sl).
[2]萬(wàn)爽.基于Android平臺(tái)的即時(shí)位置信息推送系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].西南交通大學(xué),2016.
[3]林曄,續(xù)子愷,周詳,基于大樣本數(shù)據(jù)監(jiān)測(cè)分析的彩信媒體精準(zhǔn)推送系統(tǒng)[J].中國(guó)傳媒科技,2017 (04).