李琪 唐海華 黃瑤 周超
摘要:針對當(dāng)前水利專業(yè)應(yīng)用系統(tǒng)的一體化耦合程度高、功能模塊復(fù)用性低、業(yè)務(wù)范圍擴(kuò)展困難、開發(fā)耗時較長的問題,提出了基于敏捷搭建技術(shù)的業(yè)務(wù)應(yīng)用系統(tǒng)架構(gòu)。從配置化搭建、系統(tǒng)平臺服務(wù)、模型微服務(wù)框架3個方面重點(diǎn)闡述了如何解耦系統(tǒng),并用組態(tài)化、流程化的設(shè)計(jì)思路實(shí)現(xiàn)業(yè)務(wù)應(yīng)用系統(tǒng)靈活搭建的關(guān)鍵技術(shù)。研究成果為不同專業(yè)方向、不同區(qū)域范圍的水利業(yè)務(wù)應(yīng)用提供了快速建設(shè)系統(tǒng)的思路。該成果在多個區(qū)域水利業(yè)務(wù)應(yīng)用系統(tǒng)的建設(shè)中得到了實(shí)踐,驗(yàn)證了其高效性、靈活性和擴(kuò)展性,具有良好的實(shí)用推廣價值。
關(guān) 鍵 詞:
水利業(yè)務(wù)應(yīng)用; 敏捷搭建技術(shù); 系統(tǒng)架構(gòu); 配置化; 流程化; 微服務(wù)
中圖法分類號: TP391
文獻(xiàn)標(biāo)志碼: A
DOI:10.16232/j.cnki.1001-4179.2021.06.037
中國是一個水旱災(zāi)害頻繁發(fā)生的國家。水工程防災(zāi)聯(lián)合調(diào)度是水旱災(zāi)害防御工作的一個重要環(huán)節(jié)。在過去的幾十年里,中國水工程防災(zāi)聯(lián)合調(diào)度業(yè)務(wù)發(fā)展迅速,積累了豐富的寶貴經(jīng)驗(yàn)。特別是隨著國家級、流域級、區(qū)域級綜合規(guī)劃、防洪規(guī)劃等規(guī)劃批復(fù)實(shí)施,一批防洪重點(diǎn)工程、水資源配置重點(diǎn)工程開工建設(shè),使得國家防洪工程體系、水資源配置體系逐步完善,在抵御洪水和保障水資源安全過程中開始發(fā)揮作用。近年來隨著國家防汛抗旱指揮系統(tǒng)、中小河流水文監(jiān)測系統(tǒng)等重大工程建設(shè),水文監(jiān)測預(yù)報預(yù)警服務(wù)邁上新臺階,同時也為水工程防災(zāi)聯(lián)合調(diào)度提供了準(zhǔn)確可靠的暴雨洪水監(jiān)測和預(yù)警預(yù)報信息。在此基礎(chǔ)上的防洪調(diào)度不再只是一個簡單的獨(dú)立問題,而是包含了一整套水利工程、理論體系、計(jì)算方法的系統(tǒng)工程,必須通過專業(yè)信息系統(tǒng)來計(jì)算和管理。
長期以來,水文預(yù)報系統(tǒng)[1]、水庫調(diào)度系統(tǒng)[2]受專業(yè)分工限制,各專業(yè)擅長領(lǐng)域不同,業(yè)務(wù)協(xié)同程度不足,導(dǎo)致在進(jìn)行預(yù)報調(diào)度業(yè)務(wù)的過程中,系統(tǒng)功能融合程度不深,制約了決策分析會商的時效性和準(zhǔn)確性。經(jīng)過近些年的發(fā)展,預(yù)報系統(tǒng)和調(diào)度系統(tǒng)已形成了合力,演變?yōu)槿鞒虡I(yè)務(wù)統(tǒng)一管理的一體化系統(tǒng)[3-4]。在此基礎(chǔ)上結(jié)合大數(shù)據(jù)[5]、空間關(guān)系[6]的水利業(yè)務(wù)應(yīng)用系統(tǒng)逐漸成為主流。
但一體化系統(tǒng)也不是一勞永逸的解決辦法。最主要的問題就是一體化系統(tǒng)耦合度過強(qiáng),不具有普適性,在不同的區(qū)域面向不同的對象需要重新構(gòu)建開發(fā)系統(tǒng),復(fù)用性很低。在此基礎(chǔ)上,也有針對自動構(gòu)建的基于樹型結(jié)構(gòu)的決策支持系統(tǒng)[7],探索了系統(tǒng)的可擴(kuò)展性和可維護(hù)性,多模型集成技術(shù)也有了新的思路[8]。但是對于系統(tǒng)的架構(gòu),業(yè)務(wù)流程的搭建等方面還沒有完善的解決方案。本文擬通過多組合復(fù)雜水利調(diào)控計(jì)算的敏捷搭建技術(shù),解耦水利業(yè)務(wù)應(yīng)用系統(tǒng),實(shí)現(xiàn)可配置、可擴(kuò)展的系統(tǒng)架構(gòu)。
1 系統(tǒng)現(xiàn)狀
1.1 系統(tǒng)設(shè)計(jì)
當(dāng)前水利行業(yè)信息化系統(tǒng)及平臺大多采用MVC架構(gòu)[9]或者面向服務(wù)的SOA架構(gòu)[10]開發(fā),這類體系架構(gòu)能夠?qū)ο到y(tǒng)進(jìn)行清晰明確的分層,各層級之間相對獨(dú)立,具有較好的維護(hù)性,各上層業(yè)務(wù)應(yīng)用也可以共用公共資源,具有體系結(jié)構(gòu)清晰、開發(fā)分工明確、公共模塊統(tǒng)一等優(yōu)點(diǎn)。以國家防汛抗旱指揮系統(tǒng)(二期)[11-12]為例,其系統(tǒng)架構(gòu)如圖1所示。
系統(tǒng)將水情應(yīng)用、防洪調(diào)度應(yīng)用、抗旱管理應(yīng)用三大業(yè)務(wù)涉及的各類資源整合為4個層次,從上到下分別為:采集層、網(wǎng)絡(luò)層、平臺層、應(yīng)用層。采集層負(fù)責(zé)從各種不同渠道收集水情、工情、旱情和災(zāi)情等數(shù)據(jù);網(wǎng)絡(luò)層負(fù)責(zé)從采集層到平臺層的數(shù)據(jù)傳輸鏈路以及整個系統(tǒng)運(yùn)轉(zhuǎn)的網(wǎng)絡(luò)體系;平臺層包含“兩臺一庫”,即應(yīng)用支撐平臺、數(shù)據(jù)匯集平臺和數(shù)據(jù)庫,負(fù)責(zé)支撐上層應(yīng)用;最后應(yīng)用層實(shí)現(xiàn)三大業(yè)務(wù)應(yīng)用。整個系統(tǒng)架構(gòu)較為嚴(yán)謹(jǐn),但是實(shí)施過程耗時耗力,而且系統(tǒng)整體耦合度很高,復(fù)用性較低。
1.2 存在的問題
水利行業(yè)的業(yè)務(wù)應(yīng)用系統(tǒng)因?yàn)槠鋸?fù)雜性和特殊性,不同專業(yè)方向、不同區(qū)域范圍的業(yè)務(wù)目標(biāo)差異化顯著,具有典型的多樣化和個性化特征[13];且涉及的專業(yè)模型眾多,參數(shù)類型與規(guī)模龐大,到目前為止尚沒有有效的管理手段。針對具體目標(biāo)對象設(shè)計(jì)的系統(tǒng)針對性太強(qiáng),設(shè)計(jì)者主要通過按需編制和手動編碼的方式完成系統(tǒng)架構(gòu)設(shè)計(jì),這種方式一方面效率相對較低,必須按照目標(biāo)對象編制對應(yīng)的模型和系統(tǒng)應(yīng)用;另一方面開發(fā)過程不夠直觀形象,非專業(yè)開發(fā)人員難以理解和復(fù)用。
雖然經(jīng)過技術(shù)研究和發(fā)展,模型的標(biāo)準(zhǔn)化和開發(fā)框架從理論方法到組件構(gòu)建,再到集成技術(shù)都已經(jīng)具備一定成果,但也面臨著沒有完整的業(yè)務(wù)搭建模塊來組裝業(yè)務(wù)實(shí)現(xiàn)應(yīng)用的狀況。導(dǎo)致現(xiàn)階段的水利信息化工作方式無法滿足越來越復(fù)雜的應(yīng)用場景。
總體而言,面向防汛調(diào)度的多方位、高效率、流程化、組件化技術(shù)支撐手段嚴(yán)重匱乏,支持水利應(yīng)用推廣的困難較大,因此本次研究設(shè)計(jì)一種敏捷搭建技術(shù),以改進(jìn)系統(tǒng)建設(shè)的工作方式,滿足水利專業(yè)應(yīng)用的快速建設(shè)要求。
2 系統(tǒng)敏捷搭建技術(shù)研究
2.1 系統(tǒng)總體架構(gòu)
“敏捷開發(fā)”是以用戶的需求進(jìn)化為核心,采用迭代、循序漸進(jìn)的方法進(jìn)行軟件開發(fā)的原則。而本文所述的“敏捷搭建系統(tǒng)”,是一種系統(tǒng)建設(shè)方式,該方式以流程化技術(shù)為核心、以組件化技術(shù)為基礎(chǔ)、以模型組裝銜接為手段,規(guī)范輸入輸出表達(dá),通過配置工具,實(shí)現(xiàn)系統(tǒng)建設(shè)。系統(tǒng)一方面標(biāo)準(zhǔn)化各專業(yè)模型的訪問調(diào)用,實(shí)現(xiàn)各模型在系統(tǒng)中的輸入輸出管理和自動銜接;另一方面支持流程化配置、組件化管理和快速搭建應(yīng)用,解決防洪調(diào)度業(yè)務(wù)中的專業(yè)計(jì)算成果孤島,有效提高系統(tǒng)的管理水平和執(zhí)行效率。系統(tǒng)架構(gòu)如圖2所示。
系統(tǒng)分為模型微服務(wù)框架、配置工具、系統(tǒng)平臺服務(wù)、業(yè)務(wù)應(yīng)用4個部分。
模型微服務(wù)框架部分主要開發(fā)水利專業(yè)相關(guān)的各種模型服務(wù)[14],包括水文預(yù)報模型、水庫調(diào)度模型、河道演算模型、蓄滯洪區(qū)運(yùn)用模型、二維淹沒計(jì)算模型等。并采用微服務(wù)技術(shù)進(jìn)行管理和實(shí)現(xiàn),充分利用微服務(wù)的高內(nèi)聚、低耦合、負(fù)載均衡、統(tǒng)一管理、自動注冊等特點(diǎn),提高了模型服務(wù)的性能和可維護(hù)性。模型服務(wù)僅包含計(jì)算方法,不內(nèi)置任何數(shù)據(jù),所有數(shù)據(jù)通過參數(shù)庫和輸入接口獲取。
配置工具部分主要實(shí)現(xiàn)可視化的流程配置界面,非開發(fā)人員也可以使用配置工具,將不同類型的模型進(jìn)行流程組合,實(shí)現(xiàn)水利業(yè)務(wù)的靈活配置,產(chǎn)生更加復(fù)雜的水利業(yè)務(wù)應(yīng)用。配置工具主要包括對象配置、模型配置、參數(shù)配置、方案配置、拓?fù)渑渲谩r段配置。配置成果通過配置數(shù)據(jù)庫保存。
系統(tǒng)平臺服務(wù)部分主要維護(hù)整個系統(tǒng)的正常運(yùn)行,并在配置的基礎(chǔ)上生成業(yè)務(wù)應(yīng)用,加載基礎(chǔ)數(shù)據(jù)庫、專業(yè)數(shù)據(jù)庫、配置數(shù)據(jù)庫,將已配置好的業(yè)務(wù)流程按計(jì)劃進(jìn)行執(zhí)行運(yùn)轉(zhuǎn),調(diào)用模型微服務(wù),得到業(yè)務(wù)最終輸出結(jié)果。
業(yè)務(wù)應(yīng)用部分主要面向終端用戶。所有業(yè)務(wù)均通過配置工具實(shí)現(xiàn)和生成,不再和傳統(tǒng)系統(tǒng)一樣需要逐個單獨(dú)開發(fā),而是由系統(tǒng)平臺服務(wù)自動生成和承載。
2.2 配置化搭建
該系統(tǒng)架構(gòu)核心部分通過組件化和流程化技術(shù)使模型的調(diào)用和銜接問題得以解決,并配合可視化界面便捷實(shí)現(xiàn)快速搭建應(yīng)用的效果。在可視化配置界面中,所有規(guī)范化的模型及其輸入輸出信息都以候選節(jié)點(diǎn)的形式存在,配置人員可以通過這些節(jié)點(diǎn)在配置工具中繪制出業(yè)務(wù)流程,并且設(shè)置各模型的連接關(guān)系和所需的參數(shù),最終實(shí)現(xiàn)水利專業(yè)應(yīng)用的流程化配置。
配置主要內(nèi)容包括以下方面:
(1) 對象配置。將水工程聯(lián)合調(diào)度業(yè)務(wù)中所有業(yè)務(wù)節(jié)點(diǎn)進(jìn)行抽象,例如水文站、雨量站、水庫、河段、蓄滯洪區(qū)等。并按照不同類型,對各類節(jié)點(diǎn)進(jìn)行基礎(chǔ)屬性配置和動態(tài)參數(shù)配置,描述各類對象。對象配置是一切業(yè)務(wù)的基礎(chǔ),其他配置都在此基礎(chǔ)上進(jìn)行。
(2) 方案配置。方案主要描述了業(yè)務(wù)類型,例如預(yù)報業(yè)務(wù)、調(diào)度業(yè)務(wù)、河道演算業(yè)務(wù)、回水計(jì)算業(yè)務(wù)等。不同的業(yè)務(wù)決定了要配置哪些類型的對象,對象之間的銜接關(guān)系,以及對象關(guān)聯(lián)的模型是什么種類。方案的配置確定了業(yè)務(wù)的主要目標(biāo)。
(3) 時段配置。主要用來控制業(yè)務(wù)的計(jì)算時間范圍,對于預(yù)報等業(yè)務(wù)來說,時段配置還應(yīng)包括預(yù)熱期范圍等特殊時段。
(4) 模型配置。模型配置主要控制系統(tǒng)中所有模型的定義描述和加載。作為可擴(kuò)展的系統(tǒng),模型必須能作為插件進(jìn)行加載集成,這也要求規(guī)范化開發(fā)模型,并在模型配置時注冊到系統(tǒng)中。
(5) 參數(shù)配置。主要針對模型,可以設(shè)置模型的一些必要參數(shù),例如API產(chǎn)流模型,可以配置WM,K,B等參數(shù)。
(6) 拓?fù)渑渲?。拓?fù)涫菢I(yè)務(wù)流程中對象組織的描述方式。通過組態(tài)化的方式,將業(yè)務(wù)解耦,再通過內(nèi)在邏輯關(guān)系,以拓?fù)浣Y(jié)構(gòu)圖的形式進(jìn)行重組耦合。拓?fù)浣Y(jié)構(gòu)采用的是“單點(diǎn)雙向”描述方法:“單點(diǎn)”指任意拓?fù)涔?jié)點(diǎn),包括編碼、名稱、類型等屬性;“雙向”包括指向和流向,其中指向反映父子層級關(guān)系,流向反映同層級上下游關(guān)系。
2.3 系統(tǒng)平臺服務(wù)
系統(tǒng)平臺服務(wù)是整個業(yè)務(wù)流程的執(zhí)行機(jī)構(gòu),承載了系統(tǒng)的運(yùn)行,是系統(tǒng)的核心部分。整個平臺服務(wù)功能分為如下幾部分。
(1) 流程引擎。工作流是一項(xiàng)分離業(yè)務(wù)操作和業(yè)務(wù)流轉(zhuǎn)的技術(shù),其將業(yè)務(wù)流轉(zhuǎn)交給計(jì)算機(jī)處理,實(shí)現(xiàn)業(yè)務(wù)流程的自動化。工作流技術(shù)從萌芽到成熟經(jīng)歷了幾十年的發(fā)展,但更多的是應(yīng)用在審批流程等更通用的領(lǐng)域。在水利專業(yè)信息化領(lǐng)域,還沒有針對水利專業(yè)分析的通用框架。該系統(tǒng)以工作流技術(shù)為基礎(chǔ),依托配置化敏捷思想,實(shí)現(xiàn)面向水利專業(yè)的流程引擎。該引擎主要解決以下關(guān)鍵技術(shù)要點(diǎn):
① 拓?fù)浣Y(jié)構(gòu)中上下節(jié)點(diǎn)之間傳遞數(shù)據(jù)。在配置工具中,業(yè)務(wù)人員配置了業(yè)務(wù)拓?fù)?,但在?shí)際執(zhí)行過程中,計(jì)算機(jī)并不能直接理解業(yè)務(wù)人員的想法,因此,流程引擎通過解析配置信息,分析數(shù)據(jù)流向,形成了上下游、干支流節(jié)點(diǎn)的銜接關(guān)系。
② 模型和節(jié)點(diǎn)的關(guān)聯(lián)。每個節(jié)點(diǎn)都會配置業(yè)務(wù)所需的模型,水利業(yè)務(wù)的宗旨就是調(diào)節(jié)水,當(dāng)水在整個業(yè)務(wù)流程中流轉(zhuǎn)時,模型負(fù)責(zé)在各個節(jié)點(diǎn)對水進(jìn)行調(diào)節(jié)計(jì)算。例如在水庫節(jié)點(diǎn)進(jìn)行水庫調(diào)度計(jì)算,在河段節(jié)點(diǎn)進(jìn)行演進(jìn)計(jì)算,在蓄滯洪區(qū)節(jié)點(diǎn)進(jìn)行分洪計(jì)算。當(dāng)流程運(yùn)轉(zhuǎn)到對應(yīng)的節(jié)點(diǎn)時,引擎自動按照配置好的模型計(jì)算并繼續(xù)數(shù)據(jù)流轉(zhuǎn)。
(2) 數(shù)據(jù)管理。業(yè)務(wù)執(zhí)行過程中的所有數(shù)據(jù)都在系統(tǒng)平臺服務(wù)中管理。執(zhí)行時從數(shù)據(jù)庫取出所有基礎(chǔ)數(shù)據(jù)、監(jiān)測數(shù)據(jù)、配置數(shù)據(jù)、參數(shù)數(shù)據(jù)等,交由流程引擎進(jìn)行計(jì)算,計(jì)算的結(jié)果再存儲到數(shù)據(jù)庫中。所有數(shù)據(jù)的維護(hù)由此處統(tǒng)一控制,保證數(shù)據(jù)的一致性和高效性。
(3) 服務(wù)接口。服務(wù)接口分兩部分:一部分接口負(fù)責(zé)業(yè)務(wù)的執(zhí)行控制,例如初始化數(shù)據(jù)、參數(shù)設(shè)置、計(jì)算執(zhí)行、結(jié)果查看等,這部分接口主要用于執(zhí)行流程,充分發(fā)揮平臺的基礎(chǔ)支撐作用;另一部分接口負(fù)責(zé)承載界面,向界面提供所要展示的數(shù)據(jù)。因?yàn)樵撓到y(tǒng)是一個可配置的敏捷搭建系統(tǒng),不會固化在某一個具體業(yè)務(wù)上,所以界面除了主體框架確定以外,要展示的內(nèi)容和方式都可以通過界面接口實(shí)現(xiàn)多樣化。
2.4 模型微服務(wù)框架
模型的組件化使模型可以更加獨(dú)立和內(nèi)聚,但是在水利業(yè)務(wù)應(yīng)用執(zhí)行的過程中,性能也是不可忽視的問題。部分模型計(jì)算速度慢、消耗計(jì)算資源多,雖然用來做研究可以忽略性能低帶來的時間消耗,但是業(yè)務(wù)應(yīng)用系統(tǒng)是用來支撐決策分析的,時間效率是重要考察因素之一。
微服務(wù)架構(gòu)是一種新的架構(gòu)模式,它的主旨是將一個原本獨(dú)立的系統(tǒng)拆分成多個彼此獨(dú)立的小型服務(wù),分別獨(dú)立運(yùn)行、維護(hù)、升級、擴(kuò)展。主要設(shè)計(jì)方式如圖3所示。
各模型服務(wù)注冊到模型服務(wù)注冊中心上,業(yè)務(wù)應(yīng)用通過模型服務(wù)注冊中心查詢到模型服務(wù)信息,然后在實(shí)際調(diào)用時通過該信息去直連服務(wù)。該模式既解決了傳統(tǒng)模式混亂的調(diào)用鏈,又解決了ESB模式中心壓力過大的問題。并且對于同一個模型服務(wù)1,由模型服務(wù)注冊中心動態(tài)分配,通過1A和1B進(jìn)行負(fù)載均衡,充分提高了平臺擴(kuò)展性和可維護(hù)性。
在模型標(biāo)準(zhǔn)化的基礎(chǔ)上,通過模型微服務(wù)框架建設(shè),實(shí)現(xiàn)了如下優(yōu)勢:
(1) 各水利專業(yè)模型作為微服務(wù),不再耦合進(jìn)一個應(yīng)用系統(tǒng)中,而是可以獨(dú)立運(yùn)行。一方面可以類似MIKE、Deltares、Wallingford一樣,開發(fā)模型包,打造成專業(yè)計(jì)算軟件,隨時可以增加新的模型微服務(wù);另一方面,模型的拆分使敏捷搭建配置業(yè)務(wù)成為可能,當(dāng)需要快速搭建系統(tǒng)或者遇到堰塞湖等突發(fā)情況時,可以迅速根據(jù)實(shí)際情況組合各微服務(wù)模塊,搭建業(yè)務(wù)系統(tǒng)。
(2) 專業(yè)系統(tǒng)運(yùn)行時,部分功能非常復(fù)雜,例如二維水動力模擬耗時嚴(yán)重,系統(tǒng)的執(zhí)行效率受其影響,用戶體驗(yàn)很差。通過微服務(wù)可以擴(kuò)展運(yùn)算節(jié)點(diǎn)、增加耗時節(jié)點(diǎn)計(jì)算性能等,提高系統(tǒng)整體性能。
(3) 提高系統(tǒng)可維護(hù)性。傳統(tǒng)模型集成到系統(tǒng)之后,當(dāng)系統(tǒng)出現(xiàn)異常時,只能通過日志去查看問題,很難定位到問題具體位置,也不易恢復(fù)。同時因?yàn)轳詈隙容^高,可能下級某些系統(tǒng)功能運(yùn)轉(zhuǎn)異常會導(dǎo)致上級管理系統(tǒng)運(yùn)轉(zhuǎn)失敗。微服務(wù)架構(gòu)可以減少系統(tǒng)內(nèi)的強(qiáng)耦合,使系統(tǒng)與模型之間獨(dú)立管理和監(jiān)控,便于恢復(fù)和升級維護(hù),當(dāng)某個模型服務(wù)出問題時,其他模型服務(wù)依然能保持正常運(yùn)轉(zhuǎn),并通過負(fù)載均衡自動切換。
(4) 為云計(jì)算提供條件。將模型微服務(wù)與云計(jì)算結(jié)合,利用云來為公眾和科研院所等更廣泛的機(jī)構(gòu)提供計(jì)算服務(wù),推進(jìn)互聯(lián)網(wǎng)+水利的發(fā)展。
3 應(yīng)用實(shí)踐
本文所提出的系統(tǒng)架構(gòu)設(shè)計(jì)方案在水利專業(yè)應(yīng)用領(lǐng)域具備了良好的應(yīng)用實(shí)踐可能性。并且在該架構(gòu)設(shè)計(jì)的敏捷搭建思路下,可以繼續(xù)擴(kuò)展專業(yè)應(yīng)用范圍,運(yùn)用到水文預(yù)報、防洪調(diào)度、水量調(diào)度、水質(zhì)分析等多種場景。
從系統(tǒng)建設(shè)角度來看,當(dāng)前以該技術(shù)為基礎(chǔ),以敏捷搭建的方式實(shí)現(xiàn)了重慶防汛管理信息化系統(tǒng),配置了包括水文預(yù)報、水庫調(diào)度、水庫回水計(jì)算、河道水文演算、河道一維水動力演算、決策綜合模擬、二維淹沒分析等多個業(yè)務(wù)模塊。以小于規(guī)定的開發(fā)時間要求實(shí)現(xiàn)了所有系統(tǒng)功能,并且功能可調(diào)整,在后期業(yè)務(wù)范圍出現(xiàn)變更時,也能靈活增刪節(jié)點(diǎn)和模型,極大提高了業(yè)務(wù)建設(shè)效率。另外,針對伊洛瓦底江流域水文預(yù)報系統(tǒng),根據(jù)需求和設(shè)計(jì)目標(biāo),采用常規(guī)開發(fā)方式,從零到系統(tǒng)開發(fā)完成約需4月;而采用此技術(shù)建設(shè),實(shí)際花費(fèi)約40 d,節(jié)省了66.7%的時間,充分體現(xiàn)了本架構(gòu)在建設(shè)過程中的高效性。
從性能角度來看,采用了模型微服務(wù)框架,充分利用了并行和負(fù)載均衡的優(yōu)勢。對于節(jié)點(diǎn)少、流程簡單的業(yè)務(wù),該方式和常規(guī)一體化串行系統(tǒng)的計(jì)算性能差距不大,但當(dāng)計(jì)算節(jié)點(diǎn)量和業(yè)務(wù)流程復(fù)雜度增加后,該框架逐漸開始發(fā)揮優(yōu)勢。原來多個模型需要排隊(duì)計(jì)算,現(xiàn)在可以直接分發(fā)到不同機(jī)器獨(dú)立計(jì)算再匯總結(jié)果,隨業(yè)務(wù)流程的不同,提高性能在50%以上。
從未來趨勢來看,水利大數(shù)據(jù)平臺已從概念逐漸往實(shí)踐發(fā)展,未來水利行業(yè)將重點(diǎn)發(fā)展“大數(shù)據(jù)+專業(yè)平臺”的總體布局。本技術(shù)從設(shè)計(jì)上就充分考慮了云計(jì)算的發(fā)展趨勢,并結(jié)合對專業(yè)的梳理,能夠支撐專業(yè)平臺的建設(shè)。
4 結(jié) 語
水利業(yè)務(wù)應(yīng)用是一個綜合性命題,是充分利用水資源、發(fā)揮水工程效益的重要依據(jù)。基于敏捷搭建技術(shù)的水利業(yè)務(wù)應(yīng)用系統(tǒng)既能充分解決專業(yè)領(lǐng)域問題,又能充分利用先進(jìn)的計(jì)算機(jī)技術(shù),走出了以往系統(tǒng)“一次開發(fā)、一處使用”的困局,同時提高了系統(tǒng)執(zhí)行的性能,得到了多個項(xiàng)目驗(yàn)證,具有良好的應(yīng)用前景。
但同時,本文當(dāng)前主要關(guān)注核心業(yè)務(wù)流程,在展示方式上還不夠細(xì)致,并且針對在計(jì)算流程中如何結(jié)合大數(shù)據(jù)和云計(jì)算,僅從設(shè)計(jì)角度做了提前規(guī)劃,有待進(jìn)一步探索。未來在水利行業(yè)信息化發(fā)展中,可以繼續(xù)深化研究本架構(gòu),在不同專業(yè)應(yīng)用的擴(kuò)展、云計(jì)算整合、大數(shù)據(jù)分析等方面進(jìn)行完善。
參考文獻(xiàn):
[1] 安全,范瑞琪,朱禎,等.構(gòu)建式流域?qū)崟r水文預(yù)報系統(tǒng)關(guān)鍵技術(shù)研究[J].水文,2011,31(4):6-11.
[2] 高原,徐利杰,蔡建平,等.水庫群防洪調(diào)度控制系統(tǒng)關(guān)鍵技術(shù)[J].中國科技信息,2015(22):28-29.
[3] 陳瑜彬,鄒冰玉,牛文靜,等.流域防洪預(yù)報調(diào)度一體化系統(tǒng)若干關(guān)鍵技術(shù)研究[J].人民長江,2019,50(7):223-227.
[4] 李志揚(yáng).流域防洪預(yù)報調(diào)度一體化系統(tǒng)的關(guān)鍵技術(shù)分析[J].建筑工程技術(shù)與設(shè)計(jì),2019(35):11-13.
[5] 王毅,鄒濤,周義兵,等.漢江流域自然災(zāi)害監(jiān)測預(yù)報預(yù)警大數(shù)據(jù)平臺研究[J].成都信息工程大學(xué)學(xué)報,2018,33(5):540-543.
[6] 劉永志,張文婷,崔信民.水庫防洪調(diào)度應(yīng)急管理信息系統(tǒng)研究[J].計(jì)算機(jī)科學(xué)與應(yīng)用,2018,8(4):532-538.
[7] 王洪,周惠成,彭勇.防洪決策支持系統(tǒng)調(diào)度體系自動構(gòu)建技術(shù)研究[J].水電能源科學(xué),2017,35(1):57-60,64.
[8] 唐海華,羅斌,周超,等.水庫群聯(lián)合調(diào)度多模型集成總體技術(shù)架構(gòu)[J].人民長江,2018,49(13):95-98.
[9] 趙喬,望建成,范正行,等.基于MVC模式的水庫施工期防洪度汛決策支持系統(tǒng)設(shè)計(jì)與開發(fā)[J].水力發(fā)電,2019,45(9):39-42,74.
[10] 馬增輝,解建倉,張永進(jìn),等.基于SOA的水利構(gòu)件研究[J].西安理工大學(xué)學(xué)報,2008,24(4):415-420.
[11] 劉漢宇.國家防汛抗旱指揮系統(tǒng)二期工程主要建設(shè)任務(wù)和技術(shù)要求[J].中國防汛抗旱,2016,26(3):4-7,20.
[12] 安新代.關(guān)于國家防汛抗旱指揮系統(tǒng)建設(shè)的若干思考[J].中國防汛抗旱,2018,28(9):2-4.
[13] 孫亮.淺議水利業(yè)務(wù)應(yīng)用系統(tǒng)的開發(fā)及應(yīng)用[J].河南科技,2014(17):145.
[14] 劉曉東,趙曉芳,陳雅靜,等.基于服務(wù)能力模型的微服務(wù)彈性資源供給機(jī)制[J].高技術(shù)通訊,2019,29(1):1-11.
(編輯:鄭 毅)
Research on architecture of water conservancy application system based
on agile configuration technology
LI Qi,TANG Haihua,HUANG Liyao,ZHOU Chao
(Changjiang Survey,Planning,Design and Research Co.,Ltd,Wuhan 430010,China)
Abstract:
In order to solve the problem of water conservancy application system such as high coupling of integration,low reusability of modules,difficult extending for application and time consuming in developing process,an application system architecture based on agile configuration technology is proposed.From three aspects of configuration,system platform service,and model micro-service framework,this paper focuses on the key technologies of how to decouple the system and build the application system by the design ideas of configuration and workflow.It provides an idea to construct application system rapidly for different professions and different regions.The result of the study has high practical value while its efficiency,flexibility and expansibility have been verified by several application system constructions.
Key words:
water conservancy application;agile configuration technology;system architecture;configuration;workflow;micro-service