深圳防災減災技術研究院2款核心產品獲得鯤鵬原生開發認證

(原標題:深圳防災減災技術研究院2款核心產品獲得鯤鵬原生開發認證)

地震監測預警事業與國家經濟發展、社會穩定和國民的生命財產安全息息相關,自國家地震烈度速報與預警工程建設項目開展以來,已建設一萬五千多個地震監測臺站,可在震後5-10秒產出地震預警信息,而實時彙集傳輸和存儲管理這些臺站全天候產出的海量監測數據成爲地震臺網的一項重要工作。

深圳防災減災技術研究院聚焦預警工程定製軟件研發,致力於達到實時傳輸彙集、存儲處理近兩萬個地震臺站的海量實時數據,以及在震後幾秒內測定地震參數並向社會發布地震預警信息的目標。目前, 深圳防災減災技術研究院已成功研製出兩款核心軟件——SeisWave-SSS與SeisWave-AWS,這兩款軟件均在我國地震數據的高效傳輸與共享,以及地震波形數據的系統化存儲與歸檔管理中發揮着重要作用。地震觀測數據,涵蓋了GNSS位移等多種傳感器採集的信息,對於我國地震預警機制的完善、工程抗震設計的優化以及國防安全的強化,均具有深遠的意義和重大的價值。

【鯤鵬原生架構圖】

鯤鵬平臺具備高吞吐、低時延、低能耗、高安全等優勢,還提供完善的原生開發工具鏈生態,可更好的支撐地震傳輸流服務和地震波形數據管理業務的要求。基於此,深圳防災減災技術研究院攜手鯤鵬原生開發地震數據傳輸流服務軟件SeisWave-SSS和地震波形數據存儲歸檔管理軟件SeisWave-AWS:基於鯤鵬硬件+openEuler OS+鯤鵬DevKit+鯤鵬BoostKit,實現一套代碼構建多平臺版本、且鯤鵬版本性能更優。目前上述兩款軟件已經完成鯤鵬原生開發,並順利獲得Kunpeng NATIVE認證。

流水線改造 實現多平臺版本一碼構建與高效適配

今年1月,深圳防災減災技術研究院的架構研發團隊聯合鯤鵬技術專家組成聯合架構團隊,在現有CICD流程中增加本次地震業務軟件的鯤鵬構建流程,實現從開發-構建-測試-發佈-運行的全流程優化。

開發人員基於鯤鵬服務器以及麒麟操作系統(openEuler系),搭建了持續集成節點;在構建流程中融入了鯤鵬DevKit流水線技術棧,包括流水線門禁、畢昇編譯器、鯤鵬測試框架、性能分析插件、版本漏洞掃描插件等能力,這不僅能夠確保構建產物與鯤鵬架構的適配性,全面優化在鯤鵬架構上的開發及運行效率,還能進一步提升版本的性能、測試效率和質量。

流水線優化改造後,開發人員只需開發一套代碼,有建構差異的代碼會使用宏進行定義隔離,在門禁階段可快速檢查代碼的兼容性和親和性,並構建不同平臺版本,提升開發質量的同時保證代碼質量。

【改造後的流水線】

版本迭代開發 鯤鵬賦能原生應用自動化構建與性能優化

本次原生開發的兩款業務應用主要開發語言爲java,在代碼開發階段無需改動。另外,在原有開發流程中,從編譯構建到應用部署測試都是開發人員手動進行,在搭建JenKins流水線後,只需提交開發好的代碼,流水線會自動進行編譯構建、部署測試等工作,無需人工干預,大大節省了人力成本,開發效率也得到了大幅度提升,經對比分析,開發效率提升了50%以上

代碼開發完成後提交到流水線,在流水線中可直接調用鯤鵬DevKit門禁檢查組件,對代碼的鯤鵬兼容性和親和性進行檢查和優化。首先,針對規則項會攔截架構不兼容代碼,並指導快速修改替換,確保鯤鵬架構兼容;此外,親和分析檢查會從運行模式、字節對齊檢查、構建親和檢查等多維度掃描和優化代碼,提升進一步提升代碼質量。

通過鯤鵬流水線構建後,會生成對應產品的部署包,在編譯構建階段,流水線中會無感切換爲畢昇JDK進行編譯,該編譯器針對鯤鵬架構進行了多維度優化提升,基於AppCDS特性、快速序列化、NUMA-Aware特性等特性,將進一步提升應用的運行效率。經測試,以傳輸時延持平爲前提條件,鯤鵬服務器對比友商使用的CPU資源更少,理論上能夠提升10%的吞吐率,更好的支撐大規模業務數據處理。

目前,SeisWave-SSS 和SeisWave-AWS已經在我國地震預警臺網廣泛應用,支撐我國地震預警網海量實時觀測數據的彙集傳輸和存儲管理。基於鯤鵬+openEuler系操作系統運行,這兩款軟件實現了基於國產平臺的商業部署和長期穩定運行,保障了我國地震觀測數據的安全。除了應用於地震預警監測之外,軟件還可以用於流動地震科學觀測、水庫地震安全監測、地震應急監測、石油勘探地球物理監測、建築物振動監測、鐵路振動監測、橋樑振動監測、核爆及爆破監測等領域,有着廣泛的商業應用價值。

未來,深圳防災減災技術研究院將持續加強與鯤鵬開展戰略合作,深化地震預警定製軟件研發業務原生應用,包括推進地震預警、自動速報、烈度速報、綜合分析、地震緊急信息發佈等軟件模塊的鯤鵬原生開發,實現地震監測預警全流程數據處理軟件的自主創新,保障我國的地震動觀測數據安全和國家與民生的安全。