李效利,王志欣通信作者,于 淦
(1.國家無線電監測中心云南監測站,云南 昆明 650000;2.國家無線電監測中心,北京 100037)
分布式是指將不同地點、擁有不同數據或不同功能的多臺計算機通過網絡連接起來,由控制系統統一管理,完成大規模信息處理的計算機系統[1]。
集群是指多臺服務器集中在一起提供統一服務,在邏輯上可以看作是一臺服務器對外進行服務,這些服務器就是集群[1]。
在國家短波監測一體化平臺中,九個監測站分布在不同地區,擁有不同的監測設備及監測數據, 監測中心對九個站點集中統一管理,該平臺模式可使用集群分布式架設,充分發揮集群分布式網絡架構優勢,提高工作效率及數據安全可靠性。
短波監測一體化平臺依托于國家無線電管理一體化平臺的技術架構進行設計和實施,本質上是國家無線電管理一體化平臺的一組應用系統。短波監測一體化平臺中管控系統、監測設備、監測數據庫以及應用系統之間的服務請求與響應,都經過國家無線電管理一體化平臺進行交互。如圖1所示。

圖1 邏輯架構總覽
短波監測一體化平臺系統基于SOA服務架構設計,遵循《短波監測管理一體化平臺技術規范》等相關標準規范,通過服務總線對設備操作分解為原子服務層,并通過管控系統規范標準服務,實現上層業務流程、業務應用于底層監測設備的解耦[2]。
依據短波業務需要,結合無線電管理一體化基礎平臺建設方式,短波監測一體化平臺核心業務調度(如監測管控系統任務調度、數據處理系統數據路由索引)采用中心集中集群部署,通過在監測站安裝同步災備系統,確保網絡異常情況下監測站點監測業務能正常開展,同時使用反向代理技術實現自動切換。數據傳輸存儲分析采用中心、監測站點分布式部署,將數據計算處理前置,有效緩解網絡壓力,充分利用監測站點計算和存儲資源,中心具備匯總計算能力實現各站數據的統一并對外提供服務。

圖2 集群分布式架構圖
反向代理將短波核心業務調度處理請求路由到國家中心節點,對設備、數據進行統一的調度、處理,此時,各個監測站災備系統自動從國家中心同步本站的設備元數據,以備斷網模式下對本站的設備、數據調度。
當中心和監測站斷網模式或出現網絡故障時, 監測站的反向代理自動監測網絡異常,自動將監測應用的請求切換到本站的短波分布式平臺,保證應用對本站設備的控制及分析。此時各個監測站僅對本站設備進行控制,發起基礎的監測測向功能,包括單頻測量、單頻測向、頻段掃描及頻譜觀測等, 支持本站計劃任務、整點半點錄音功能、基礎數據分析(頻段占用度統計、信號占用度統計),并將監測過程數據、業務數據、結果數據存儲與監測站。網絡恢復后,監測站通過合理的數據同步機制,保證短波站與國家中心的數據一致性。
構建應用系統核心服務集群,讓核心微服務模塊都能依據并發壓力和高可用需要任意擴展,保證集群中任意一臺服務器出現問題不會影響整個應用系統的正常運行。
通過應用服務的集群化,實現根據需求對高并發的模塊進行平滑擴容,通過負載均衡實現服務的高并發需求,如最大在線用戶數≥100人等需求。
集群橫向擴展的前提是將服務的狀態信息從服務中剝離,實現無狀態的微服務,相同微服務多實例運行時達到狀態一致,同時使用負載均衡策略將服務消費者路由到合理的微服務上。如圖3所示。

圖3 微服務關系圖
負載均衡微服務的業務狀態信息統一存儲在Redis緩存中,各實例共享使用狀態信息,實現狀態的一致性。
服務消費者通過負載均衡器(Ribbon)使用配置好的均衡策略實現微服務實例的路由。
Redis緩存服務器構建集群保障狀態數據的安全性,采用Redis哨兵模式建立集群,監控Redis系統的運行狀況,主要實現單個redis節點宕機時無縫切換備用redis服務器。Sentinel(哨兵)系統用于管理多個Redis服務器(instance),該系統執行三個任務:一是監控(Monitoring),Sentinel會不斷地檢查你的主服務器和從服務器是否運作正常;二是提醒(Notif ication),當被監控的某個Redis服務器出現問題時,Sent inel通過API向應用程序發送通知;三是自動故障遷移(Automatic failover),當一個主服務器不能正常工作時,Sentinel會開始一次自動故障遷移操作,將失效主服務器的其中一個從服務器升級為新的主服務器,并讓失效主服務器的其他從服務器改為復制新的主服務器;當客戶端試圖連接失效的主服務器時,集群也會向客戶端返回新主服務器的地址,使得集群可以使用新主服務器代替失效服務器。
短波業務應用系統在國家中心和監測站分布式部署,中心采用集群模式、監測站使用單節點進行部署,保證中心和監測站的系統能夠作為邏輯上統一的應用系統對外提供服務。
各個監測站通過Nginx反向代理發布給本站的監測應用,國家中心與監測站之間使用統一部署的DNS域名解析服務器集群實現灰度發布,對所有區域用戶實現無差別化訪問聯網模式下,反向代理將短波業務(包括監測管控、數據分析、存儲等)處理路由到國家中心節點,對設備、數據進行統一的調度、處理,此時,各個短波站自動從國家中心同步本站的設備元數據,以備斷網模式下對本站的設備調度。
當中心和監測站斷網模式下,監測站的反向代理自動監測網絡異常,自動將監測應用的請求切換到本站的短波分布式平臺,保證應用對本站設備的控制及分析,并將監測過程數據、業務數據、結果數據存儲與監測站,不影響用戶對本站的控制及日常監測分析工作,保障系統的高可用。
當中心和監測站網絡恢復后,監測站通過合理的數據同步機制,保證監測站與國家中心的數據一致性。
本文分析了集群分布式網絡架設的實現方法和保障性應用及意義,凸顯了在短波監測一體化平臺中使用集群分布式網絡架設在提升短波監測能力、保障系統高可用及數據安全性上的優點。