• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      氣象自動(dòng)觀測(cè)集成平臺(tái)設(shè)計(jì)

      2018-08-13 11:25:48朱東紅吳東麗闕艷紅劉立業(yè)劉興良張會(huì)可郭淵杰
      軟件 2018年7期
      關(guān)鍵詞:中心站氣象觀測(cè)

      朱東紅,吳東麗,郭 劍,闕艷紅,劉立業(yè),劉興良,張會(huì)可,郭淵杰

      ?

      氣象自動(dòng)觀測(cè)集成平臺(tái)設(shè)計(jì)

      朱東紅1,吳東麗2,郭 劍1,闕艷紅1,劉立業(yè)1,劉興良1,張會(huì)可1,郭淵杰1

      (1. 中國(guó)電子科技集團(tuán)公司第27研究所,河南 鄭州 450000;2. 中國(guó)氣象局氣象探測(cè)中心,北京 100081)

      由于不同氣象設(shè)備數(shù)據(jù)通信協(xié)議多樣化,且氣象業(yè)務(wù)觀測(cè)要素越來(lái)越多樣化、定制化,導(dǎo)致每新增一種新的業(yè)務(wù)觀測(cè),相配套的軟件從通信、應(yīng)用、存儲(chǔ)等都需要重新設(shè)計(jì)開(kāi)發(fā),這導(dǎo)致了很多重復(fù)開(kāi)發(fā),造成了資源的浪費(fèi)。氣象自動(dòng)觀測(cè)集成平臺(tái)致力于解決不同氣象儀器廠商、不同設(shè)備間的通信協(xié)議解析、適配問(wèn)題;統(tǒng)一設(shè)計(jì)RESTful API數(shù)據(jù)接口,為平臺(tái)上層定制化的業(yè)務(wù)應(yīng)用提供有力支撐;在軟件邏輯層面實(shí)現(xiàn)觀測(cè)業(yè)務(wù)可定制。平臺(tái)軟件擬采用敏捷開(kāi)發(fā)方法,平臺(tái)在構(gòu)建初期被合理切分為多個(gè)子模塊,各個(gè)子模塊都經(jīng)過(guò)測(cè)試,具備可視、可集成和可獨(dú)立運(yùn)行使用的特征。經(jīng)測(cè)試試用,本平臺(tái)能夠兼容、接入多種氣象觀測(cè)設(shè)備,真正實(shí)現(xiàn)了專業(yè)氣象領(lǐng)域業(yè)務(wù)軟件的集約化,大大提高了開(kāi)發(fā)和交付效率。

      氣象;適配;定制;集成

      0 引言

      隨著科技的日新月異,許多新型儀器設(shè)備進(jìn)入氣象領(lǐng)域,越來(lái)越多的氣象業(yè)務(wù)實(shí)現(xiàn)了自動(dòng)化觀測(cè)。然而,這些新增的觀測(cè)系統(tǒng)均獨(dú)立運(yùn)行,通常是每新建設(shè)一種業(yè)務(wù),就增加一套中心站軟件和應(yīng)用軟件,造成了現(xiàn)有氣象信息中心服務(wù)器使用效率低、觀測(cè)數(shù)據(jù)重復(fù)、混亂、集約化程度低等問(wèn)題,維護(hù)這些軟件及數(shù)據(jù)需要耗費(fèi)大量的人力資源。并且原有業(yè)務(wù)軟件系統(tǒng)擴(kuò)展性差,設(shè)備通信協(xié)議多種多樣,數(shù)據(jù)質(zhì)量系統(tǒng)控制不夠完善,存儲(chǔ)系統(tǒng)雖然積累了大量氣象歷史數(shù)據(jù),但各為系統(tǒng),數(shù)據(jù)價(jià)值挖掘能力不足[1]。隨著業(yè)務(wù)系統(tǒng)不斷增多,值班人員工作量也將不斷增加。因此迫切需要針對(duì)現(xiàn)有的氣象觀測(cè)系統(tǒng)進(jìn)行集成與管理。

      針對(duì)上述問(wèn)題及不斷發(fā)展的氣象觀測(cè)業(yè)務(wù)需求,平臺(tái)將致力于實(shí)現(xiàn)觀測(cè)業(yè)務(wù)運(yùn)行集約化[2],開(kāi)發(fā)涵蓋觀測(cè)數(shù)據(jù)采集、質(zhì)量控制、數(shù)據(jù)傳輸、觀測(cè)產(chǎn)品制作和運(yùn)行狀態(tài)監(jiān)控、設(shè)備故障遠(yuǎn)程診斷等各類業(yè)務(wù)及管理信息的綜合氣象觀測(cè)業(yè)務(wù)一體化平臺(tái),實(shí)現(xiàn)實(shí)時(shí)監(jiān)控、考核評(píng)估綜合氣象觀測(cè)業(yè)務(wù)運(yùn)行狀況、實(shí)時(shí)數(shù)據(jù)質(zhì)量控制、設(shè)備故障遠(yuǎn)程診斷或人工指導(dǎo)下的故障診斷維修、觀測(cè)產(chǎn)品快速制作等功能,全面提高業(yè)務(wù)觀測(cè)管控水平。

      本文從平臺(tái)技術(shù)架構(gòu)、技術(shù)選型、關(guān)鍵數(shù)據(jù)與存儲(chǔ)結(jié)構(gòu)、平臺(tái)數(shù)據(jù)處理流程、基于本平臺(tái)的應(yīng)用示例等方面進(jìn)行詳細(xì)闡述。

      1 平臺(tái)技術(shù)架構(gòu)

      1.1 總體架構(gòu)

      圖1為氣象自動(dòng)觀測(cè)集成平臺(tái)(以下簡(jiǎn)稱平臺(tái))總體架構(gòu)圖,平臺(tái)為基于B/S結(jié)構(gòu)的上層應(yīng)用提供定制化的數(shù)據(jù)服務(wù)接口,其主要由數(shù)據(jù)收集與協(xié)議適配、消息中間件、中心站、后臺(tái)管理、數(shù)據(jù)訪問(wèn)接口、緩存和數(shù)據(jù)存儲(chǔ)等模塊組成。數(shù)據(jù)收集與協(xié)議適配模塊負(fù)責(zé)接收解析遠(yuǎn)程設(shè)備上傳的觀測(cè)數(shù)據(jù),消息生產(chǎn)、命令調(diào)試和鏈路管理。數(shù)據(jù)接收與解析:為不同的協(xié)議(設(shè)備)開(kāi)發(fā)其專屬的解析動(dòng)態(tài)庫(kù)(DLL),以插件的形式進(jìn)行統(tǒng)一管理,對(duì)新設(shè)備的接入只需提供協(xié)議動(dòng)態(tài)庫(kù)或者按照指定格式生成數(shù)據(jù)文件即可。消息生產(chǎn):對(duì)消息中間件來(lái)說(shuō)該模塊為消息生產(chǎn)者(Message Producer),對(duì)解析后的觀測(cè)數(shù)據(jù),按照平臺(tái)內(nèi)部的統(tǒng)一的數(shù)據(jù)交換格式,生產(chǎn)一條消息推送到消息中間件的消息隊(duì)列(Message Queue)以供中心站消費(fèi)[3]。命令調(diào)試:為前端(上層應(yīng)用)發(fā)出的設(shè)備調(diào)試命令提供雙向透明通道。鏈路管理:該模塊設(shè)計(jì)為能夠接入5000個(gè)設(shè)備,對(duì)每個(gè)設(shè)備的上線、離線等行為進(jìn)行實(shí)時(shí)監(jiān)視,為每個(gè)設(shè)備提供一條高效的通信鏈路。消息中間件模塊是數(shù)據(jù)收集與協(xié)議適配模塊和中心站模塊間的通信手段,其內(nèi)部以先進(jìn)先出(FIFO)的隊(duì)列數(shù)據(jù)結(jié)構(gòu)作為通信載體,同時(shí)它提供多種消息模式以供選擇,并能夠通過(guò)簡(jiǎn)單配置使消息數(shù)據(jù)定時(shí)持久化到磁盤(pán)。中心站模塊主要負(fù)責(zé)消息消費(fèi)、質(zhì)量控制、產(chǎn)品生成和推送。消息消費(fèi):對(duì)消息中間件來(lái)說(shuō)中心站為消息消費(fèi)者(Message Consumer),它從消息隊(duì)列取出隊(duì)頭數(shù)據(jù),按照平臺(tái)數(shù)據(jù)規(guī)則進(jìn)行消息數(shù)據(jù)解析。質(zhì)量控制:對(duì)解析后的數(shù)據(jù)實(shí)施中心站級(jí)別的質(zhì)量控制、輸出入庫(kù)。產(chǎn)品生成與推送:按照規(guī)定(國(guó)家/省級(jí)氣象局),定時(shí)從數(shù)據(jù)庫(kù)讀取觀測(cè)數(shù)據(jù),以預(yù)定格式生成各種報(bào)文文件,通過(guò)FTP協(xié)議推送到指定服務(wù)器。后臺(tái)管理模塊負(fù)責(zé)平臺(tái)配置,例如觀測(cè)要素指標(biāo)、用戶權(quán)限等。數(shù)據(jù)訪問(wèn)接口提供基于用戶名和密碼的登陸認(rèn)證、權(quán)限管理和Restful API數(shù)據(jù)接口,用戶登陸成功后返回給前端令牌(AccsessToken)以供后期數(shù)據(jù)請(qǐng)求使用。在數(shù)據(jù)訪問(wèn)接口和數(shù)據(jù)存儲(chǔ)層增加緩存是為了提高接口并發(fā)訪問(wèn)速度,減少磁盤(pán)I/O,降低數(shù)據(jù)庫(kù)負(fù)載,當(dāng)用戶發(fā)起接口請(qǐng)求時(shí),服務(wù)端會(huì)首先查詢緩存,如果有所需數(shù)據(jù),直接從緩存返回,反之,再查詢數(shù)據(jù)庫(kù)。

      圖1 氣象自動(dòng)觀測(cè)集成平臺(tái)總體架構(gòu)

      1.2 技術(shù)選型

      平臺(tái)需要實(shí)現(xiàn)的主要功能:并行高效應(yīng)對(duì)數(shù)以千計(jì)的遠(yuǎn)程設(shè)備突發(fā)式數(shù)據(jù)傳輸問(wèn)題,為新設(shè)備接入提供插件式支持;為上層應(yīng)用提供Restful API風(fēng)格的HTTP接口;并提供接口級(jí)別的安全訪問(wèn)控制功能;平臺(tái)內(nèi)部進(jìn)程間可靠、高效的通信技術(shù)。為實(shí)現(xiàn)上述功能,平臺(tái)主要使用如下技術(shù)。

      平臺(tái)與上層應(yīng)用、平臺(tái)內(nèi)部數(shù)據(jù)收集與中心站數(shù)據(jù)交換均采用JSON格式。JSON(JavaScript Object Notation)是一種獨(dú)立于編程語(yǔ)言的數(shù)據(jù)傳輸格式[4],它與XML相比具有輕量化、簡(jiǎn)潔、層次結(jié)構(gòu)清晰、解析傳輸更加高效等優(yōu)點(diǎn)。數(shù)據(jù)收集與協(xié)議適配模塊需要較強(qiáng)的處理效率,使用具有面向?qū)ο?、靈活、執(zhí)行處理效率高等特點(diǎn)的C++語(yǔ)言來(lái)開(kāi)發(fā)。

      為實(shí)現(xiàn)HTTP接口,平臺(tái)數(shù)據(jù)訪問(wèn)接口(Web后端)采用Java語(yǔ)言開(kāi)發(fā)、SSH(Spring、SpringMVC、Hibernate)框架。Spring充當(dāng)容器管理角色,它融合了IoC(Inversion of Control,控制反轉(zhuǎn))、DI(Dependency Injection,依賴注入)等重要的編程思想。對(duì)于Spring來(lái)說(shuō),所謂IoC就是由Spring來(lái)負(fù)責(zé)控制對(duì)象的生命周期和對(duì)象間的關(guān)系,所謂DI就是由Spring在程序運(yùn)行時(shí)動(dòng)態(tài)的將某個(gè)依賴關(guān)系注入到組件中。IoC和DI并非為程序增加了更多功能,而是為了提升組件的可重用性,并為系統(tǒng)搭建一個(gè)靈活、可擴(kuò)展的結(jié)構(gòu)平臺(tái)[5]。Hibernate用來(lái)做數(shù)據(jù)持久層,它對(duì)JDBC做了良好封裝、對(duì)系統(tǒng)沒(méi)有侵入性(所謂的輕量級(jí))、提供了一級(jí)緩存和二級(jí)緩存、擯棄了以數(shù)據(jù)庫(kù)為中心的思想,使得在后端接口開(kāi)發(fā)中能做到完全面向?qū)ο骩6]。SpringMVC(MVC即Model、View、Controller)是整個(gè)平臺(tái)后端業(yè)務(wù)邏輯的核心,其有諸如強(qiáng)大的約定大于配置的契約式編程、與Spring框架集成方便、分層設(shè)計(jì)、模塊解耦等優(yōu)點(diǎn)。處理流程為:前端控制器DispatchServlet接收HTTP請(qǐng)求,調(diào)用處理器映射器HandlerMapping查找相應(yīng)的處理器,處理器映射器根據(jù)URL查找處理器Handler,并給前端控制器返回生成的處理器和處理器攔截器HandlerIntercepter,前端控制器調(diào)用處理器適配器HandlerAdapter,處理器適配器調(diào)用相應(yīng)的處理器,處理器將出路結(jié)果以ModelAndView形式返回給處理器適配器,處理器適配器將ModelAndView返回給前端控制器,前端控制器將ModelAndView傳給視圖解析器ViewResolver,視圖解析器將解析后的View返回給前端控制器,經(jīng)渲染后將模型數(shù)據(jù)填充到HTTP請(qǐng)求域中返回,至此,一次HTTP請(qǐng)求處理過(guò)程結(jié)束[7-8]。如下圖2所示:

      圖2 SpringMVC執(zhí)行流程

      平臺(tái)數(shù)據(jù)接口安全性包括用戶認(rèn)證(Authen-tication)和用戶授權(quán)(Authorization)。用戶認(rèn)證是指驗(yàn)證某個(gè)用戶是否為平臺(tái)系統(tǒng)中的合法主體,即用戶能否訪問(wèn)系統(tǒng);用戶授權(quán)是指驗(yàn)證某個(gè)用戶是否有權(quán)限執(zhí)行某個(gè)操作。本平臺(tái)用戶授權(quán)粒度為角色、權(quán)限、資源三級(jí),即用戶屬于角色(多對(duì)一),角色擁有權(quán)限(一對(duì)多),權(quán)限擁有資源(一對(duì)多)。對(duì)于以上應(yīng)用場(chǎng)景,Spring Security框架都有很好的支持,它支持多種主流認(rèn)證方式,并提供定制化、細(xì)粒度的授權(quán)控制。其執(zhí)行流程為:當(dāng)Web服務(wù)器啟動(dòng)時(shí),加載Spring Security過(guò)濾器MySecur?ityFilter,同時(shí)為其注入MyInvocationMetadata SourceSe?rvice和MyAccessDecisionManager類,前者在執(zhí)行時(shí)會(huì)提取數(shù)據(jù)庫(kù)中預(yù)存的用戶權(quán)限形成列表,并循環(huán)該列表,根據(jù)權(quán)限獲取對(duì)應(yīng)的資源列表,將資源(URL)作為key,權(quán)限列表作為value,形成Map數(shù)據(jù)結(jié)構(gòu),當(dāng)用戶登陸時(shí)調(diào)用loadUserByUsername方法,認(rèn)證成功后根據(jù)用戶名從數(shù)據(jù)庫(kù)提取該用戶擁有的權(quán)限列表(UserDetails)。當(dāng)用戶請(qǐng)求某個(gè)資源(URL)時(shí),觸發(fā)MyAccessDecisonManager類,執(zhí)行其decide方法攔截資源訪問(wèn)請(qǐng)求,將資源和Map中的key對(duì)比,若相同,就提取出對(duì)應(yīng)的value(list),即若要請(qǐng)求這個(gè)資源(URL),必須具有跟這個(gè)資源相對(duì)應(yīng)的權(quán)限值列表(Authorizations),以此Auth?orizations進(jìn)行循環(huán)和UserDetails中的權(quán)限進(jìn)行對(duì)比,若有一個(gè)(也可多個(gè))相同,即授權(quán)通過(guò),返回資源數(shù)據(jù),否則終止請(qǐng)求向下傳遞,向用戶返回信息提示未經(jīng)授權(quán)的訪問(wèn)。如下圖3所示:

      圖3 Spring Security執(zhí)行流程

      所謂平臺(tái)內(nèi)部間的進(jìn)程通信意即數(shù)據(jù)收集與協(xié)議適配端和中心站端的數(shù)據(jù)交換,為實(shí)現(xiàn)此目標(biāo),平臺(tái)選用Apache下的開(kāi)源消息總線ActiveMQ。它支持多種語(yǔ)言編寫(xiě)客戶端,可以很方便的和Spring框架融合,支持諸如in-VM, TCP, SSL, NIO, UDP, JGroups, JXTA多種消息傳輸協(xié)議,支持通過(guò)JDBC和journal提供高速的消息持久化,可以采用集群部署,避免單點(diǎn)故障,并且用戶社區(qū)極為活躍[9]。

      使用緩存提高了平臺(tái)數(shù)據(jù)訪問(wèn)速度,緩存也即內(nèi)存,平臺(tái)使用Redis內(nèi)存數(shù)據(jù)庫(kù)作為緩存層。Redis的性能極高,其存取復(fù)雜度都是O(1),支持豐富的數(shù)據(jù)類型如String、List、Hash等,所有操作都具有原子性,如果需要,Redis也可以持久化緩存數(shù)據(jù)[10-12]。

      2 數(shù)據(jù)處理流程

      圖4為平臺(tái)0層數(shù)據(jù)流圖,該圖主要包含三個(gè)方向的數(shù)據(jù)流,即數(shù)據(jù)收集存儲(chǔ)、產(chǎn)品生成和終端用戶數(shù)據(jù)/命令請(qǐng)求。

      圖4 平臺(tái)b層數(shù)據(jù)流

      數(shù)據(jù)收集存儲(chǔ):通過(guò)主動(dòng)/被動(dòng)方式獲取傳感數(shù)據(jù),解析后封裝成平臺(tái)規(guī)定的統(tǒng)一消息格式(JSON格式,如{‘key1’:’value1’, …, ’keyn’: ’valuen’}),然后將數(shù)據(jù)推送(即入隊(duì))至消息中間件ActiveMQ,ActiveMQ使用消息存儲(chǔ)器kahaDB對(duì)消息進(jìn)行持久化,直到該消息被消費(fèi)掉(即出隊(duì))。中心站從消息中間件讀取消息,解析數(shù)據(jù),對(duì)數(shù)據(jù)施加平臺(tái)級(jí)質(zhì)量控制后入庫(kù)存儲(chǔ)。另外,數(shù)據(jù)收集一般要比中心站入庫(kù)速度要快(因?yàn)橹行恼救霂?kù)涉及磁盤(pán)I/O),這容易導(dǎo)致消息消費(fèi)速度遠(yuǎn)遠(yuǎn)低于生產(chǎn)速度,加之某些業(yè)務(wù)系統(tǒng)可能對(duì)數(shù)據(jù)的實(shí)時(shí)性要求較高,因此,可以運(yùn)行多個(gè)中心站以加快消息被消費(fèi)處理的速度。

      產(chǎn)品生成:中心站根據(jù)具體業(yè)務(wù)需求按時(shí)從數(shù)據(jù)庫(kù)讀取觀測(cè)數(shù)據(jù),按照指定格式生成數(shù)據(jù)產(chǎn)品(一般指報(bào)文)推送至第三方數(shù)據(jù)中心。

      終端用戶數(shù)據(jù)/命令:1)數(shù)據(jù),終端客戶(瀏覽器/桌面應(yīng)用)向API服務(wù)端發(fā)送HTTP登陸認(rèn)證請(qǐng)求,認(rèn)證成功后服務(wù)端按照一定的算法生成AccessToken令牌給終端用戶,終端用戶將攜帶AccessToken(放在HTTP請(qǐng)求頭)進(jìn)行數(shù)據(jù)請(qǐng)求,服務(wù)端收到請(qǐng)求,取出AccessToken,依據(jù)數(shù)據(jù)庫(kù)中的配置,判斷該終端用戶是否有本次數(shù)據(jù)請(qǐng)求的權(quán)限,驗(yàn)證通過(guò)后,服務(wù)端先從緩存查找是否有本次請(qǐng)求的數(shù)據(jù),如果有,則直接從緩存返回?cái)?shù)據(jù),否則,重新去數(shù)據(jù)庫(kù)查詢后將結(jié)果返回給終端用戶,同時(shí)以本次查詢結(jié)果更新緩存,其HTTP請(qǐng)求序列見(jiàn)下圖5。2)命令,命令請(qǐng)求登陸認(rèn)證與授權(quán)同數(shù)據(jù)請(qǐng)求一樣,區(qū)別在于請(qǐng)求到達(dá)服務(wù)端后命令被轉(zhuǎn)發(fā)至數(shù)據(jù)收集端,數(shù)據(jù)收集端根據(jù)命令參數(shù)再轉(zhuǎn)發(fā)至相應(yīng)的遠(yuǎn)程設(shè)備,命令返回后將沿著同樣的通道返回至終端用戶。

      圖5 數(shù)據(jù)請(qǐng)求序列圖

      3 關(guān)鍵存儲(chǔ)結(jié)構(gòu)

      平臺(tái)設(shè)計(jì)的核心思想是盡量避免業(yè)務(wù)軟件尤其是數(shù)據(jù)收集、中心站(處理、入庫(kù))軟件的重復(fù)開(kāi)發(fā),提高軟件的可重用性,能夠?yàn)樯蠈佣喾N觀測(cè)業(yè)務(wù)提供支撐,并為新的氣象觀測(cè)業(yè)務(wù)提供靈活的接入方式。為實(shí)現(xiàn)上述功能,在數(shù)據(jù)庫(kù)中設(shè)計(jì)以下關(guān)鍵表結(jié)構(gòu)。

      (1)觀測(cè)業(yè)務(wù)分類表

      表1 觀測(cè)業(yè)務(wù)分類示例

      Tab.1 Examples of observed business classifications

      (2)用戶信息表

      表2 用戶信息示例

      Tab.2 Sample User Information

      (3)觀測(cè)要素字典表

      表3 觀測(cè)要素字典示例

      Tab.3 Examples of observational elements dictionaries

      (4)觀測(cè)業(yè)務(wù)與觀測(cè)要素映射表

      表4 觀測(cè)業(yè)務(wù)與觀測(cè)要素映射示例

      Tab.4 Examples of observation services and observation elements mapping

      平臺(tái)內(nèi)部可以定義多種氣象觀測(cè)業(yè)務(wù),并為每種業(yè)務(wù)進(jìn)行編碼和命名(表1);平臺(tái)針對(duì)業(yè)務(wù)類型進(jìn)行用戶系統(tǒng)隔離(表2),在用戶信息表中增加業(yè)務(wù)編碼字段與用戶id字段組成該表的聯(lián)合主鍵,不同的業(yè)務(wù)系統(tǒng)可以擁有相同的用戶id;按照氣象觀測(cè)要素建立觀測(cè)要素字典信息表(表3),該表內(nèi)容盡可能全面涵蓋各種氣象觀測(cè)要素,并對(duì)該表定期按需維護(hù)以保證其完整性和一致性,表中要素編碼值即為要素在數(shù)據(jù)庫(kù)中存儲(chǔ)時(shí)的字段名,為平臺(tái)增加新的氣象觀測(cè)業(yè)務(wù)時(shí),只需從該表中選取觀測(cè)要素進(jìn)行組合寫(xiě)入映射表中(表4),映射表中每條記錄表達(dá)了某種觀測(cè)業(yè)務(wù)下?lián)碛械挠^測(cè)要素信息(存儲(chǔ)時(shí)的字段名)和觀測(cè)要素的存儲(chǔ)位置信息(字段隸屬的表名),映射關(guān)系以JSON字符串形式存儲(chǔ),數(shù)據(jù)收集端接收解析設(shè)備上傳的數(shù)據(jù),按照觀測(cè)要素字典信息并附加業(yè)務(wù)編碼將數(shù)據(jù)重新封裝、傳輸?shù)街行恼径?,中心站根?jù)映射表解析數(shù)據(jù)并入庫(kù)。這樣做的好處在于為平臺(tái)增加新觀測(cè)業(yè)務(wù)時(shí),只需要通過(guò)平臺(tái)管理系統(tǒng)進(jìn)行業(yè)務(wù)配置,而不必重復(fù)開(kāi)發(fā)中心站軟件;對(duì)數(shù)據(jù)收集端只需要知道觀測(cè)要素字典(以手冊(cè)形式提供)和觀測(cè)業(yè)務(wù)編號(hào)加載對(duì)應(yīng)的DLL插件,重用原來(lái)的通信架構(gòu)即可。

      4 基于平臺(tái)的應(yīng)用實(shí)例

      本節(jié)通過(guò)一個(gè)應(yīng)用實(shí)例(新鄭智慧園區(qū)數(shù)據(jù)監(jiān)控系統(tǒng))展示平臺(tái)如何通過(guò)后臺(tái)管理接入新的業(yè)務(wù)系統(tǒng),并簡(jiǎn)單介紹該系統(tǒng)的功能組成。

      首先新建新鄭智慧園區(qū)數(shù)據(jù)監(jiān)控系統(tǒng),如下圖6,其次為業(yè)務(wù)系統(tǒng)映射觀測(cè)要素集合,即為第3節(jié)表4增加記錄。新鄭智慧園區(qū)數(shù)據(jù)監(jiān)控系統(tǒng)主要包含9個(gè)氣象觀測(cè)要素?cái)?shù)據(jù):空氣溫度、空氣濕度、風(fēng)速、風(fēng)向、雨量、輻射、氣壓、土壤濕度、土壤溫度,如下圖7。配置完后,平臺(tái)即可收集、處理、存儲(chǔ)該業(yè)務(wù)系統(tǒng)的觀測(cè)數(shù)據(jù),而不必重復(fù)開(kāi)發(fā)平臺(tái)的數(shù)據(jù)收集與協(xié)議適配端和中心站端。

      新鄭智慧園區(qū)數(shù)據(jù)監(jiān)控系統(tǒng)主要包括基于GIS的臺(tái)站位置顯示、監(jiān)控要素實(shí)時(shí)數(shù)據(jù)顯示、監(jiān)控要素歷史數(shù)據(jù)查詢分析(曲線和表格)、設(shè)備故障報(bào)警、監(jiān)控要素?cái)?shù)據(jù)超限報(bào)警等,如下圖8。

      5 平臺(tái)部署

      圖9為平臺(tái)部署圖,平臺(tái)各個(gè)模塊均是基于Windows平臺(tái),各個(gè)服務(wù)器既可運(yùn)行在統(tǒng)一局域網(wǎng)內(nèi)(LAN),也可部署在多個(gè)異構(gòu)網(wǎng)絡(luò)環(huán)境,通過(guò)Internet互相連接通信。其中消息服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器、API接口服務(wù)器、前端服務(wù)器需要Java虛擬機(jī)支撐,安裝JDK1.8,中心站軟件采用C#開(kāi)發(fā),需要安裝.net framework 4.0,緩存服務(wù)器安裝Redis4.0.9。

      6 結(jié)論

      本文介紹了開(kāi)發(fā)設(shè)計(jì)氣象自動(dòng)觀測(cè)集成平臺(tái)的必要性和緊迫性,在介紹時(shí)側(cè)重說(shuō)明平臺(tái)設(shè)計(jì)的核心思路、整體架構(gòu)和各個(gè)模塊的技術(shù)選型,不拘泥于具體的代碼實(shí)現(xiàn)。平臺(tái)實(shí)現(xiàn)了多種業(yè)務(wù)系統(tǒng)的數(shù)據(jù)統(tǒng)一收集、質(zhì)控、存儲(chǔ),在新業(yè)務(wù)接入上真正實(shí)現(xiàn)了通過(guò)后臺(tái)簡(jiǎn)單配置即可收集、存儲(chǔ)業(yè)務(wù)數(shù)據(jù)的功能,避免了功能模塊的重復(fù)開(kāi)發(fā),提高了軟件開(kāi)發(fā)效率,基本達(dá)到了當(dāng)初的設(shè)計(jì)要求,在實(shí)際應(yīng)用中取得了不錯(cuò)的效果。

      圖6 平臺(tái)后臺(tái)管理系統(tǒng)

      圖7 業(yè)務(wù)映射

      圖8 新鄭智慧園區(qū)數(shù)據(jù)監(jiān)控系統(tǒng)

      下一步的工作,將對(duì)平臺(tái)進(jìn)行優(yōu)化,同時(shí)從硬件、軟件方面實(shí)現(xiàn)平臺(tái)訪問(wèn)的高并發(fā)性、平臺(tái)數(shù)據(jù)的高可用性,為上層定制化的應(yīng)用系統(tǒng)提供穩(wěn)定、高效的數(shù)據(jù)與接口支撐。同時(shí),也為以后打造氣象觀測(cè)領(lǐng)域?qū)S迷破脚_(tái)做一次探索和技術(shù)積淀。

      圖9 平臺(tái)部署

      [1] 中國(guó)氣象局, 氣象信息化發(fā)展規(guī)劃(2018-2022年)[Z]. 2017.

      [2] 中國(guó)氣象局, 綜合氣象業(yè)務(wù)發(fā)展規(guī)劃(2016-2020年)[Z]. 2017.

      [3] 馮雪, 孫丙宇, 方薇, 吳斌. 基于物聯(lián)網(wǎng)的電梯安管系統(tǒng)通信模塊[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用, 2017, 26(4): 210-211.

      [4] Bassett, L. 魏嘉汛譯. JSON必知必會(huì)[M]. 北京: 人民郵電出版社, 2016.

      [5] Walls, C. 張衛(wèi)濱譯.Spring實(shí)戰(zhàn)(第4版)[M]. 北京: 人民郵電出版社, 2016.

      [6] Bauer, C. &G.King. 楊春花, 彭永康, 俞黎敏譯. Hibernate實(shí)戰(zhàn)(第二版)[M]. 北京: 人民郵電出版社, 2008.

      [7] Warin, G. 張衛(wèi)濱, 孫麗文譯. 精通Spring MVC 4[M]. 北京: 人民郵電出版社, 2017.

      [8] 韓凌波. 基于mvc架構(gòu)的普法考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J]. 軟件, 2015, 36(3): 132-133.

      [9] 錢崢, 胡亞旦, 黃旋旋. 基于“消息中間件”技術(shù)的氣象信息總線[J]. 氣象科技, 2016, 44(2): 217-218.

      [10] 程晗, 汪學(xué)明, 等. 基于Redis的海量智慧醫(yī)療小文件存儲(chǔ)架構(gòu)設(shè)計(jì)[J]. 計(jì)算機(jī)應(yīng)用與軟件, 2018, 35(4):87.

      [11] 李鵬鵬, 鄭揚(yáng)飛, 劉玉龍. Redis在即時(shí)通訊系統(tǒng)中的應(yīng)用[J]. 軟件, 2017, 38(1): 115-116.

      [12] 伍紹佳, 杜林, 廖麗. 基于云平臺(tái)的數(shù)字化校園信息門(mén)戶系統(tǒng)實(shí)踐研究[J]. 軟件, 2017, 38(1): 31-32.

      Design of Integrated Platform for Meteorological Automatic Observation

      ZHU Dong-hong1, WU Dong-li2, GUO Jian1, QUE Yan-hong1, LIU Li-ye1, LIU Xing-liang1, ZHANG Hui-ke1, GUO Yuan-jie1

      (1. CETC27, Zhengzhou 450000, China; 2. Meteorological observation center of China Meteorological Administration, Beijing 100081, China)

      Due to the diversity of data communication protocols of different meteorological equipments, and the more and more diverse and customized meteorological service observation elements, each new kind of business observation is needed, and the corresponding software needs to be redesigned and developed from communication, business application and storage, which leads to many repetitive development, which causes the waste of resources. The specialized Meteorological automatic observation integrated platform is devoted to solve the communication protocol parsing and matching problems between different meteorological instruments manufacturers and different equipments, unify the design of RESTful API data interface, provide strong support for the customized business application above the platform, and make the observation service in the software logic level customizable. The platform software is to adopt Agile development method, the platform is divided into several sub modules in the early stage of construction, each sub module has been tested, and has the characteristics of visualization, integration and independent operation. After testing, the platform can be compatible, access to a variety of meteorological observation equipment, truly realize the professional meteorological business software intensification, greatly improve the development and delivery efficiency.

      Meteorological; Matching; Customizable; Integration

      TP311. 52

      A

      10.3969/j.issn.1003-6970.2018.07.039

      朱東紅(1986-),男,工程師,主要研究方向:分布式計(jì)算;吳東麗(1977-),女,副研究員,主要研究方向:農(nóng)業(yè)氣象觀測(cè)和農(nóng)業(yè)氣象災(zāi)害風(fēng)險(xiǎn)評(píng)估;郭劍(1986-),男,工程師,主要研究方向:地理信息系統(tǒng);闕艷紅(1986-),女,工程師,主要研究方向:控制工程;劉立業(yè)(1992-),男,工程師,主要研究方向:自動(dòng)化;劉興良(1995-),男,工程師,主要研究方向:軟件工程;張會(huì)可(1990-),女,工程師,主要研究方向:電子與通信工程;郭淵杰(1984-),男,工程師,主要研究方向:嵌入式系統(tǒng)。

      本文著錄格式:朱東紅,吳東麗,郭劍,等. 氣象自動(dòng)觀測(cè)集成平臺(tái)設(shè)計(jì)[J]. 軟件,2018,39(7):182-190

      猜你喜歡
      中心站氣象觀測(cè)
      氣象
      觀測(cè)到恒星死亡瞬間
      軍事文摘(2023年18期)2023-11-03 09:45:42
      氣象樹(shù)
      《內(nèi)蒙古氣象》征稿簡(jiǎn)則
      大國(guó)氣象
      一帶一路
      天測(cè)與測(cè)地VLBI 測(cè)地站周圍地形觀測(cè)遮掩的討論
      添加帶外控制設(shè)備網(wǎng)不通
      可觀測(cè)宇宙
      太空探索(2016年7期)2016-07-10 12:10:15
      高分辨率對(duì)地觀測(cè)系統(tǒng)
      太空探索(2015年8期)2015-07-18 11:04:44
      孝义市| 普陀区| 沁阳市| 石景山区| 秦安县| 广汉市| 左贡县| 浦江县| 泽普县| 泰宁县| 盐池县| 余干县| 玛多县| 绥棱县| 公安县| 出国| 林芝县| 安新县| 龙岩市| 南丹县| 天水市| 巴林右旗| 巴里| 龙州县| 荆门市| 云霄县| 呼玛县| 宁海县| 肇东市| 清新县| 静宁县| 阳春市| 永昌县| 扶沟县| 当雄县| 丹寨县| 桐梓县| 桦甸市| 朝阳区| 北票市| 墨江|