汪璐,王前,司馬俊杰,張棟
(長江三峽通航管理局,湖北 宜昌 443002)
現(xiàn)有三峽通航調(diào)度系統(tǒng)于2014年建成投運,系統(tǒng)涵蓋了申報、安檢、到錨等七大主要功能,實現(xiàn)了兩壩船閘及升船機“一次申報、統(tǒng)一計劃、統(tǒng)一調(diào)度、分壩實施”的無縫調(diào)度指揮,切實提高了船舶過閘效率,保障了通航安全。隨著近年來三峽通航形勢的變化,三峽通航管理部門、過壩船舶以及社會各界對通航調(diào)度提出了更高的要求,為切實推動三峽通航高質(zhì)量發(fā)展,順應通航發(fā)展新形勢,提升船方過壩體驗、提高過壩效率,三峽通航管理部門在現(xiàn)有調(diào)度系統(tǒng)基礎上,著手三峽通航智能調(diào)度系統(tǒng)開發(fā)研究工作[1]。
三峽通航智能調(diào)度系統(tǒng)開發(fā)涉及多方面內(nèi)容,如系統(tǒng)主要功能模塊的需求、核心功能的模型與算法、信息采集方式等,是一個系統(tǒng)性工程,本文主要研究系統(tǒng)整體框架設計。
微服務架構是一項在云中部署應用和服務的新技術,基本思想在于考慮圍繞業(yè)務領域組件來創(chuàng)建應用,這些應用可獨立地進行開發(fā)、管理和加速。在分散的組件中使用微服務云架構和平臺,可使部署、管理和服務功能交付變得更簡單。
微服務架構的關鍵在于該服務可以在自己的程序中運行?;诖丝蓪⒎展_與微服務架構(在現(xiàn)有系統(tǒng)中分布一個API)區(qū)分開來。在服務公開中,許多服務都可以被內(nèi)部獨立進程所限制。如果其中任何一個服務需要增加某種功能,就必須縮小進程范圍。在微服務架構中,只需在特定的某種服務中增加所需功能,而不影響整體進程的架構[2]。
因此,在三峽通航智能調(diào)度系統(tǒng)建設中采用微服務架構,有利于在同一個綜合性系統(tǒng)中充分實現(xiàn)三峽通航調(diào)度組織、安全監(jiān)管、信息服務等功能,同時有利于在通航管理規(guī)定、業(yè)務流程變更時對系統(tǒng)的某項功能進行重新設計、改造,符合遠期三峽通航智能調(diào)度系統(tǒng)升級和擴展需求。
三峽智能通航調(diào)度系統(tǒng)在遵循三峽通航管理局現(xiàn)有規(guī)范與標準(應用系統(tǒng)架構及數(shù)據(jù)中心)的基礎上,結合氣象、水文、通航環(huán)境實際情況,實現(xiàn)三峽調(diào)度水域自動化、智能化通航調(diào)度組織與安全監(jiān)管,實現(xiàn)基礎數(shù)據(jù)采集、船舶申報、智能計劃、船舶安檢、錨泊管理、計劃執(zhí)行、船舶進程管理及預警、信號控制、疑似問題船舶甄別與處理、統(tǒng)計分析、信息服務及管理、信息集中動態(tài)展示、綜合查詢、日志及接口管理等功能,完成船舶過壩申報、到錨排序、“三位一體”智能化調(diào)度方案生成、自動錨泊、遠程智能安檢、通航調(diào)度信息發(fā)布、自動化發(fā)航、計劃執(zhí)行與計劃調(diào)整等一系列業(yè)務處理。三峽智能通航調(diào)度系統(tǒng)通過構建規(guī)范的整體流程,確定了先計劃后安檢的模式,實現(xiàn)了船舶申報后可預期并細化了聯(lián)控調(diào)度的組織工作。
在確定船舶過壩整體流程的基礎上,在三峽通航智能調(diào)度系統(tǒng)中構建以下基本功能模塊。
(1)通航業(yè)務模塊
該模塊主要用于與船舶過壩直接相關的功能的實現(xiàn),包括船舶申報、錨泊、安檢、計劃、過閘等,由通航業(yè)務服務對象使用。
(2)通航管理模塊
該模塊為保障船舶過壩秩序、統(tǒng)計船舶過壩效益等工作而設立,主要由通航管理部門來使用。具體功能包括:對船舶航行實際情況偏離業(yè)務流程的船舶進行提醒、糾正;對疑似違法、違規(guī)、違章以及不誠信的船舶進行篩選、認定及處理;對通航調(diào)度組織產(chǎn)生的相關數(shù)據(jù)進行統(tǒng)計、分析、應用、展示;展示樞紐運行實際情況。
(3)服務需求模塊
該模塊聚焦于為實現(xiàn)智能調(diào)度業(yè)務,在智能調(diào)度系統(tǒng)之外需增加的服務需求,主要分為信息采集需求和信息處理和服務需求等,主要用于為通航業(yè)務模塊和通航管理模塊的功能實現(xiàn)提供支撐。
(4)其他系統(tǒng)運行模塊
該類模塊是指數(shù)字化的系統(tǒng)在運行過程中,為保障系統(tǒng)正常有序運行而設的模塊,如用戶管理、日志記錄等,為系統(tǒng)通用模塊。
三峽調(diào)度系統(tǒng)采用微服務架構,各模塊之間基本相互獨立,松耦合,各模塊、系統(tǒng)之間的數(shù)據(jù)都通過數(shù)據(jù)交換平臺進行數(shù)據(jù)交換,除像申報、到錨等直接關聯(lián)內(nèi)外網(wǎng)的業(yè)務處理可以進行模塊間通信外,其余業(yè)務都通過數(shù)據(jù)平臺進行數(shù)據(jù)中轉(zhuǎn)。三峽通航智能調(diào)度系統(tǒng)整體框架如圖1所示。
圖1 三峽通航智能調(diào)度系統(tǒng)框架圖
三峽通航智能調(diào)度系統(tǒng)通過對船舶過閘全過程的梳理,理順過程中各環(huán)節(jié)的邏輯關系,圍繞業(yè)務領域組件來創(chuàng)建應用,這些應用可獨立地進行開發(fā)、管理和加速。在分散的組件中使用微服務云架構和平臺,使部署、管理和服務功能交付變得更簡單,通過將應用和服務分解成更小的、松散耦合的組件,使其更容易升級和擴展,并采用成熟的三層應用架構,實現(xiàn)業(yè)務數(shù)據(jù)、業(yè)務邏輯、用戶展示相分離,利于系統(tǒng)橫向縱向擴展,實現(xiàn)系統(tǒng)性能動態(tài)提升、資源動態(tài)擴展等?;谖⒎占軜嫷娜龒{通航智能調(diào)度系統(tǒng)的三層應用具體如下。
(1)展示層
根據(jù)不同業(yè)務特性選擇不同的技術路線,對于一線操作人員,提供基于江圖可視化的人機交互操作界面和數(shù)據(jù)集中展示的表格化UI界面;對于管理者,提供自定義的二維統(tǒng)計途徑,獲取多維度數(shù)據(jù)信息;對于指揮中心集中監(jiān)測數(shù)據(jù)內(nèi)容,則采用業(yè)界常用的BI可視化工具,實現(xiàn)數(shù)據(jù)一站式大屏展示[3]。
(2)業(yè)務邏輯層
基于微服務架構的理念,三峽通航智能調(diào)度系統(tǒng)在進行整體設計時對核心業(yè)務邏輯進行拆分,將原來大而全的單進程架構按照業(yè)務模塊拆分成可獨立部署的應用程序,以達到平滑系統(tǒng)更新、升級,方便負載擴展的目的。
考慮到三峽通航智能調(diào)度全流程自動運行,實現(xiàn)現(xiàn)有區(qū)域聯(lián)動控制計劃、安檢計劃、過壩計劃“三合一”,形成“一根主線”+“多個業(yè)務分支”的模式?!耙桓骶€”即過閘滾動計劃,“多個業(yè)務分支”即滾動預計劃、安檢計劃、錨地指泊、過閘安檢、過壩計劃、調(diào)度發(fā)航及閘次運行。因此,根據(jù)各業(yè)務流程環(huán)節(jié)的特性,采用多任務調(diào)度中心的形式,拆分核心業(yè)務層,通過消息隊列組件確保各環(huán)節(jié)能自動銜接流轉(zhuǎn)。主要包括一個任務控制中心和多個業(yè)務處理中心,即多任務調(diào)度控制中心和業(yè)務服務處理中心、調(diào)度規(guī)則中心、調(diào)度數(shù)據(jù)中心、數(shù)據(jù)服務中心、數(shù)據(jù)分析中心、監(jiān)控告警中心等多個業(yè)務處理中心。業(yè)務邏輯層的任務控制中心和業(yè)務處理中心架構如圖2所示。
圖2 三峽通航智能調(diào)度系統(tǒng)業(yè)務邏輯層架構圖
采用dubbo微服務架構,還支持服務治理、負載均衡等功能。這樣不僅可提高系統(tǒng)的可用性,還能動態(tài)提升系統(tǒng)應用層的性能。如業(yè)務處理中心的自動計劃編排入庫業(yè)務非常繁忙,占用較多的CPU和內(nèi)存資源,可另外加一臺機器,單獨再部署一個自動計劃編排服務,使得整個系統(tǒng)有自動計劃編排服務在同時工作,平衡負載[4]。
根據(jù)該系統(tǒng)構架,業(yè)務邏輯層通過調(diào)度數(shù)據(jù)中心接收各項船舶及調(diào)度相關信息,結合其他方式采集的相關信息,通過調(diào)度規(guī)則中心和業(yè)務處理中心進行處理,通過科學的計劃編制算法來實現(xiàn)“三合一”滾動計劃的編制工作。
(3)數(shù)據(jù)層
隨著調(diào)度業(yè)務的不斷變化,單純的結構化數(shù)據(jù)已不能滿足業(yè)務需求,隨著非結構化數(shù)據(jù)的引入,數(shù)據(jù)層需要考慮數(shù)據(jù)庫瓶頸。大量復雜的數(shù)據(jù)查詢表連接邏輯充斥整個系統(tǒng),數(shù)據(jù)庫垂直拆分成功的關鍵就是如何重新設計系統(tǒng)數(shù)據(jù)層各模塊相互耦合的問題。
基于微服務架構的智能調(diào)度系統(tǒng)的具體表現(xiàn)包括:
(1)計劃編制全智能:系統(tǒng)根據(jù)通航環(huán)境、建筑物運行狀態(tài)和各項管理規(guī)則的應用,自動編制閘次框架,并將待閘船舶納入框架內(nèi),形成完整的計劃內(nèi)容,涵蓋聯(lián)動控制預計劃、安檢計劃、過壩計劃等方面,并根據(jù)實時運行情況智能滾動。
(2)調(diào)度監(jiān)管全智能:通過智能發(fā)布調(diào)度(航行)指令實現(xiàn)智能指揮(進出閘指揮、通行信號揭示)、智能發(fā)航、智能錨泊等服務,并跟蹤各項進程中的船舶航行情況,實現(xiàn)助航、監(jiān)管等服務。
(3)通航調(diào)度范圍全線條:實現(xiàn)船舶過壩申報水域范圍無限延伸,取消區(qū)域限制。
(4)聯(lián)動控制和安全管控全鏈條:實現(xiàn)“船舶從港口出港申報→聯(lián)動控制沿途海事管控→過閘安檢→調(diào)度發(fā)航→過閘指揮”的全程聯(lián)動,有效銜接。
(5)通航環(huán)境和通航建筑物運行信息全感知:通過圖像識別、傳感器應用和對接其他管理部門信息實現(xiàn)水文氣象、外圍港口數(shù)據(jù)、船流動態(tài)、船閘工況、航道通航、應急救援等信息的全方位感知。
(6)通航數(shù)據(jù)管理及統(tǒng)計全覆蓋:建立調(diào)度數(shù)據(jù)分中心,實現(xiàn)通航管理集中采集,生成的所有動、靜態(tài)數(shù)據(jù)統(tǒng)一管理。
(7)通航動態(tài)管理全適時:通過數(shù)據(jù)分析中心,適時研判通航要素,集中展示轄區(qū)運行態(tài)勢。
三峽通航智能調(diào)度系統(tǒng)開發(fā)在滿足計劃編制全智能、調(diào)度監(jiān)管全智能、通航調(diào)度范圍全線條、聯(lián)動控制和安全管控全鏈條、通航環(huán)境和通航建筑物運行信息全感知、通航數(shù)據(jù)管理及統(tǒng)計全覆蓋、通航動態(tài)管理全適時等智能化功能需求的基礎上,從系統(tǒng)開發(fā)角度考慮,新開發(fā)設計的調(diào)度系統(tǒng)要不斷適應通航形勢的變化和用戶的需求變化,保證有更新升級空間。本文研究采用微服務架構進行三峽通航智能調(diào)度系統(tǒng)的總體設計,實現(xiàn)各功能模塊在整個系統(tǒng)結構中可以“插拔”,功能模塊間除必要業(yè)務聯(lián)系和邏輯關系外,基本處于一種松耦合狀態(tài),系統(tǒng)內(nèi)數(shù)據(jù)交換集中在調(diào)度數(shù)據(jù)分中心內(nèi),對外數(shù)據(jù)交換統(tǒng)一由調(diào)度數(shù)據(jù)分中心執(zhí)行,適應當前通航管理部門對智能調(diào)度系統(tǒng)的開發(fā)需求。