• 
    

    
    

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

      一種微服務(wù)框架的暴雨強度服務(wù)平臺設(shè)計與實現(xiàn)

      2019-07-30 08:31:24劉櫻楊明徐集云王銳曾悠高婷
      現(xiàn)代計算機 2019年18期
      關(guān)鍵詞:應(yīng)用服務(wù)歷時服務(wù)平臺

      劉櫻,楊明,徐集云,王銳,曾悠,高婷

      (1.浙江省氣候中心,杭州310017;2.浙江省氣象信息網(wǎng)絡(luò)中心,杭州310017;3.浙江省交通規(guī)劃設(shè)計研究院有限公司,杭州310017)

      0 引言

      暴雨強度公式是反映降雨規(guī)律、指導(dǎo)城市排水防澇工程設(shè)計和相關(guān)設(shè)施建設(shè)的重要基礎(chǔ)。傳統(tǒng)的暴雨強度統(tǒng)計是根據(jù)當(dāng)?shù)亟邓當(dāng)?shù)據(jù)進行擬合后給出經(jīng)驗公式,根據(jù)經(jīng)驗公式代入需要計算的重現(xiàn)期及降水歷時后,得出暴雨強度值,這樣的查詢方式復(fù)雜、繁瑣且較為費時,已經(jīng)不能滿足現(xiàn)在氣象業(yè)務(wù)中大數(shù)據(jù)量、高并發(fā)、高效查詢的需求。為了提高暴雨強度計算與查詢的性能和低耦合性的要求,本文嘗試采用Spring Cloud微服務(wù)框架重構(gòu)傳統(tǒng)的暴雨強度公式計算與查詢方式,并對其采用的技術(shù)方法進行研究。

      由于暴雨強度公式編制的特殊性,傳統(tǒng)的暴雨強度計算查詢是通過人工計算,沒有一個簡單全面的操作平臺。浙江省氣候中心自2015 年開始,為期4 年時間編制完成了浙江省站70 多個站點的暴雨強度公式,這為本系統(tǒng)提供了基礎(chǔ)支撐,也是本系統(tǒng)的亮點所在。鑒于此,本文以需求為牽引,結(jié)合業(yè)務(wù)應(yīng)用的特點,基于微服務(wù)框架研發(fā)了一套能充分發(fā)揮分層服務(wù)和高并發(fā)的優(yōu)勢,為用戶提供扁平化服務(wù)體驗的暴雨強度服務(wù)平臺。為了解暴雨強度情況提供了翔實的數(shù)據(jù)基礎(chǔ),且操作簡單,大大節(jié)約了計算與查詢時間,為暴雨強度在氣象業(yè)務(wù)和氣候評估中的應(yīng)用起到一定的作用。

      1 微服務(wù)架構(gòu)

      隨著云計算、虛擬化等技術(shù)和理念的發(fā)展,2014 年由Martin Fowler 和James Lewis 共同提出微服務(wù)(Micro Service)[1]。微服務(wù)是一個具有高并發(fā)、高擴展、獨立部署等特性的應(yīng)用,它將復(fù)雜的應(yīng)用系統(tǒng)以獨立業(yè)務(wù)模塊的形式拆解成多個應(yīng)用服務(wù)[2],根據(jù)業(yè)務(wù)場景的需要,選擇相應(yīng)的服務(wù)構(gòu)建業(yè)務(wù)場景,每個應(yīng)用服務(wù)都是自治單元,可以采用不同的實現(xiàn)技術(shù),各個應(yīng)用服務(wù)都運行在各自的進程中,并使用輕量級的通信機制(如RESTful 或RPC),相互配合實現(xiàn)完整應(yīng)用[3]。有利于開發(fā)者專注于某個模塊的快速實現(xiàn),并提供應(yīng)用服務(wù)。

      相對于傳統(tǒng)的單一的服務(wù)架構(gòu),微服務(wù)將各個功能分解到各個獨立自治的應(yīng)用服務(wù),實現(xiàn)了對整個應(yīng)用系統(tǒng)的解耦,具有以下的優(yōu)勢[4-5]:

      (1)實現(xiàn)技術(shù)選型靈活:開發(fā)人員可以針對不同的業(yè)務(wù)場景和服務(wù)需求,選擇不同的開發(fā)技術(shù)或平臺,從而有針對性地解決具體業(yè)務(wù)問題。

      (2)復(fù)雜度可控:各個應(yīng)用服務(wù)都專注于單一的功能實現(xiàn),將整體的服務(wù)需求,分散到各個應(yīng)用服務(wù),復(fù)雜度減低,較傳統(tǒng)架構(gòu)更加可控。

      (3)功能邊界清晰:各個應(yīng)用服務(wù)之間通過輕量級的接口通信,服務(wù)邊界更加清晰。

      (4)具有高擴展性:每個應(yīng)用服務(wù)可以根據(jù)業(yè)務(wù)需求獨立進行擴展。

      (5)獨立部署:每個微服務(wù)都運行在獨立的進程中,當(dāng)某個應(yīng)用服務(wù)發(fā)生變更時,可獨立進行部署,無需部署整個應(yīng)用系統(tǒng)。

      (6)高容錯:在微服務(wù)架構(gòu)下,故障被隔離在微服務(wù)內(nèi)部??赏ㄟ^超時重試、多副本策略等機制實現(xiàn)應(yīng)用層面的容錯,避免全局不可用[6]。

      2 微服務(wù)架構(gòu)的暴雨強度服務(wù)平臺

      從邏輯上,暴雨強度服務(wù)平臺分為暴雨數(shù)據(jù)采集、暴雨數(shù)據(jù)處理與強度計算和暴雨信息發(fā)布三個主要模塊,在微服務(wù)架構(gòu)下,三個主要模塊為分解為多個不同的微服務(wù),對于功能相近的微服務(wù)歸并為一個微服務(wù)集,制定相關(guān)服務(wù)標(biāo)準(zhǔn)規(guī)范,微服務(wù)間通過服務(wù)接口通信調(diào)用。暴雨強度服務(wù)平臺的服務(wù)框架如圖1 所示。

      圖1 暴雨強度服務(wù)平臺的服務(wù)框架圖

      通過將暴雨強度服務(wù)平臺的暴雨數(shù)據(jù)采集、暴雨數(shù)據(jù)處理與強度計算和暴雨信息發(fā)布三個主要微服務(wù)集,統(tǒng)一注冊到注冊中心,用戶通過API 網(wǎng)關(guān)和安全管理微服務(wù),根據(jù)需求組合不同的微服務(wù),通過統(tǒng)一的數(shù)據(jù)標(biāo)準(zhǔn)規(guī)范,經(jīng)過采集、加工等流程,在用戶端展示。

      2.1 Spring Cloud微服務(wù)框架的系統(tǒng)架構(gòu)設(shè)計

      微服務(wù)應(yīng)用需要統(tǒng)一管理,因此,需要引入一套微服務(wù)治理框架,本文采用比較流行的Spring Cloud 微服務(wù)治理框架,它主要利用Spring Boot 能夠簡化應(yīng)用服務(wù)的復(fù)雜性,以簡單快速的方式實現(xiàn)各個服務(wù)和部署應(yīng)用,并且具有跨平臺的互操作性、數(shù)據(jù)重用性等優(yōu)勢,可以有效解決快速開發(fā)部署、跨平臺、網(wǎng)絡(luò)異構(gòu)和數(shù)據(jù)重用等問題,簡化了分布式系統(tǒng)的基礎(chǔ)開發(fā),如配置中心、負載均衡、斷路器、服務(wù)注冊發(fā)現(xiàn)、數(shù)據(jù)監(jiān)控和消息總線等。

      本文利用Spring Cloud 微服務(wù)框架定義了一套標(biāo)準(zhǔn)的數(shù)據(jù)調(diào)用方式和接口,為各個服務(wù)之間的數(shù)據(jù)交換和查詢等提供標(biāo)準(zhǔn)化的數(shù)據(jù)支撐。利用Spring Cloud 框架在暴雨強度服務(wù)平臺中主要具有以下功能:①利用Config 公共配置組件,為微服務(wù)集群的參數(shù)提供統(tǒng)一的配置;②利用Eureka 服務(wù)注冊中心組件,在微服務(wù)啟動時,向Eureka 注冊中心注冊微服務(wù),利用心跳連接,監(jiān)控各個微服務(wù)的運行狀況;③利用Zuul的API 網(wǎng)關(guān)服務(wù)組件,實現(xiàn)微服務(wù)的路由,通過配置映射指定服務(wù)分發(fā)請求,發(fā)現(xiàn)調(diào)用其他的微服務(wù),并執(zhí)行相關(guān)的業(yè)務(wù)邏輯;④利用Hystrix 服務(wù)斷路器,實現(xiàn)服務(wù)的調(diào)用熔斷控制、降級處理,保障服務(wù)故障快速處理,提供可視化監(jiān)控;⑤利用Ribbon 軟負載均衡組件,提供的負載均衡算清,結(jié)合服務(wù)注冊中心實現(xiàn)服務(wù)間調(diào)用的軟負載、動態(tài)部署和橫向擴容等。在微服務(wù)框架中,面向用戶的是暴雨信息發(fā)布服務(wù),其他服務(wù)在微服務(wù)框架的內(nèi)部進行調(diào)用。因此,權(quán)限管理統(tǒng)一放在網(wǎng)關(guān),所有外部服務(wù)請求經(jīng)過網(wǎng)關(guān)時,判斷是否合法。

      2.2 微服務(wù)業(yè)務(wù)架構(gòu)

      暴雨數(shù)據(jù)查詢系統(tǒng)面臨著大量的歷史數(shù)據(jù)、查詢計算等高效服務(wù)問題,隨著各類數(shù)據(jù)的廣泛使用,暴雨相關(guān)的數(shù)據(jù)呈現(xiàn)出了大數(shù)據(jù)的特征。從數(shù)據(jù)角度來看,傳統(tǒng)的單臺服務(wù)器的存儲和處理能力性能,越來越難得滿足數(shù)據(jù)集增長和計算的需求,這些需要把傳統(tǒng)的微服務(wù)進行再分解和架構(gòu)。根據(jù)暴雨強度服務(wù)平臺的暴雨數(shù)據(jù)采集、暴雨數(shù)據(jù)處理與強度計算和暴雨信息發(fā)布三個主要模塊,分解微服務(wù),形成微服務(wù)集群。

      (1)暴雨數(shù)據(jù)采集

      暴雨強度計算數(shù)據(jù)的來源主要包括歷史降水量、歷時各地區(qū)暴雨強度計算參數(shù)和其他數(shù)據(jù)等,這些數(shù)據(jù)一方面通過歷年氣象自動站采集,整理質(zhì)控后的氣象數(shù)據(jù);另一文獻是根據(jù)各個地區(qū)不同重現(xiàn)期整理的計算參數(shù)等。后期還包括空間數(shù)據(jù)等,數(shù)據(jù)的來源具有全面性、異構(gòu)性和多元性,通過分析本文將暴雨采集微服務(wù)群,對數(shù)據(jù)進行分類與歸納,拆分為不同的微服務(wù),對接不同的數(shù)據(jù)類型和存儲。數(shù)據(jù)存儲主要分為關(guān)系型結(jié)構(gòu)化數(shù)據(jù)庫和非結(jié)構(gòu)化數(shù)據(jù)庫兩種數(shù)據(jù)庫,同時針對大數(shù)據(jù)量的數(shù)據(jù),采用分布式文件系統(tǒng)來存儲。拆分的微服務(wù)包括歷史氣象數(shù)據(jù)采集、參數(shù)采集和其他數(shù)據(jù)采集三個服務(wù)。

      圖2 暴雨數(shù)據(jù)采集示意圖

      (2)暴雨數(shù)據(jù)處理與強度計算

      根據(jù)業(yè)務(wù)分析,按照業(yè)務(wù)場景和種類拆分為不同的微服務(wù),實現(xiàn)不同的微服務(wù)之間的通信。計算任務(wù)采用Spark 框架進行流式計算。微服務(wù)集為分短歷時暴雨強度計算微服務(wù)、歷時最大降水量計算微服務(wù)和降水分布特征查詢策服務(wù)。

      ①短歷時暴雨強度計算

      根據(jù)各歷時不同重現(xiàn)期下的降水量和暴雨強度公式,計算不同地區(qū)的短歷時暴雨強度。

      式中:q 為暴雨強度(單位:L/(S·hm2)),P 為重現(xiàn)期(單位:a),t 為降雨歷時(單位:min)。重現(xiàn)期越長、歷時越短,暴雨強度就越大,而A1、b、c、n 是與地方暴雨特性有關(guān)的參數(shù),A1雨力參數(shù),即重現(xiàn)期為1a 時的1min 設(shè)計降雨量(單位:mm);c 為雨力變動參數(shù);b 為降雨歷時修正參數(shù),即對暴雨強度公式兩邊求對數(shù)后能使曲線化成直線所加的一個時間參數(shù)(單位:min);n為暴雨衰減指數(shù),與重現(xiàn)期有關(guān)。

      ②歷時最大降水量計算

      以滑動求和的方法,計算各地區(qū)常規(guī)歷時下的最大降水量。以分鐘數(shù)據(jù)庫為基礎(chǔ),計算5、10、15、20、30、45、60、90、120、150、180、1440 分鐘下的常規(guī)站及自動站的年最大降水量值,實現(xiàn)降水分布制圖功能。

      ③降水分布特征查詢

      通過歷時數(shù)據(jù),實現(xiàn)常年降水分布特征統(tǒng)計值及空間分布計算(時段分為1971-2000 年及1981-2010年兩個時段,共計30 年),計算常年同期的降水值計算及空間分布計算。

      (3)暴雨信息發(fā)布

      暴雨信息發(fā)布是面向用戶或應(yīng)用的環(huán)節(jié),用戶通過客戶端或應(yīng)用對服務(wù)端API 的資源進行請求,經(jīng)過網(wǎng)關(guān)合法性驗證后,根據(jù)業(yè)務(wù)邏輯,調(diào)用不同的微服務(wù)進行統(tǒng)計計算,向用戶或應(yīng)用返回請求計算或查詢結(jié)果。提供的功能如下:①統(tǒng)計與查詢?nèi)我鈺r段,任意重現(xiàn)期(年)下的各地區(qū)降水量;②全省多年一遇降水分布,提供各地區(qū)降水量的空間分布特征分析;③各地區(qū)暴雨強度公式,提供計算公式參數(shù)的查詢。

      3 應(yīng)用實現(xiàn)

      利用本文介紹的技術(shù)及方案,實現(xiàn)了基于Spring Cloud 微服務(wù)框架的暴雨強度計算與查詢系統(tǒng),簡稱暴雨強度服務(wù)平臺。應(yīng)用結(jié)果顯示,該設(shè)計方案具有較好的效果和良好的應(yīng)用價值。暴雨強度服務(wù)平臺效果如圖3 所示。

      圖3 暴雨強度服務(wù)平臺效果圖

      4 結(jié)語

      氣象信息化是解決未來氣象集約化、一體化的發(fā)展方向。本文針對傳統(tǒng)的暴雨強度單體結(jié)構(gòu)應(yīng)用存在的可擴展性、并發(fā)性、維護性等方面的問題,介紹了一種微服務(wù)框架下的暴雨強度服務(wù)平臺的設(shè)計與實現(xiàn)。介紹了微服務(wù)框架的特征及優(yōu)勢、微服務(wù)架構(gòu)的暴雨強度服務(wù)平臺微服務(wù)化關(guān)鍵問題的總體結(jié)構(gòu)、解決治理方案、接口方案等,設(shè)計了暴雨數(shù)據(jù)采集、暴雨數(shù)據(jù)處理與強度計算和暴雨信息發(fā)布三個主要微服務(wù)集的各個子功能服務(wù),最后介紹了其應(yīng)用實現(xiàn)。Spring Cloud 框架的實踐為暴雨強度公式計算在研究降雨規(guī)律、評估指導(dǎo)城市排水防澇工程設(shè)計和相關(guān)設(shè)施建設(shè)的重要基礎(chǔ),也為氣象業(yè)務(wù)系統(tǒng)提供了一種新的建設(shè)思路和手段,提高了氣象信息化能力。

      猜你喜歡
      應(yīng)用服務(wù)歷時服務(wù)平臺
      密碼服務(wù)平臺
      打造一體化汽車服務(wù)平臺
      全球衛(wèi)星互聯(lián)網(wǎng)應(yīng)用服務(wù)及我國的發(fā)展策略
      量詞“只”的形成及其歷時演變
      常用詞“怠”“惰”“懶”的歷時演變
      論基于云的電子政務(wù)服務(wù)平臺構(gòu)建
      對《紅樓夢》中“不好死了”與“……好的”的歷時考察
      國家不動產(chǎn)統(tǒng)一登記信息平臺構(gòu)建與應(yīng)用服務(wù)
      古今字“兌”“說”“悅”“?!睔v時考察
      基于云計算的民航公共信息服務(wù)平臺
      聊城市| 同江市| 淮安市| 墨竹工卡县| 腾冲县| 孝昌县| 东乡| 申扎县| 正蓝旗| 吴堡县| 林西县| 唐海县| 黄石市| 武威市| 洮南市| 聊城市| 廊坊市| 富裕县| 德化县| 蕉岭县| 永善县| 磐安县| 平原县| 隆德县| 周至县| 萨迦县| 碌曲县| 兴仁县| 大姚县| 永善县| 玛纳斯县| 东丽区| 屏东市| 平安县| 南充市| 醴陵市| 绍兴市| 湾仔区| 巴塘县| 闽侯县| 印江|