數字化、自動化、智能化的主旋律下,架構的進化也在提速。在近日舉辦的ArchSummit全球架構師峰會上,網易數帆技術專家、架構師裴斐和網易數帆技術專家周勁松分别分享了雲原生業務改造和數據湖實時化的架構實踐。
業務架構:“縱”“橫”整合,雲原生賦能業務改造
雲原生是架構的未來,然而傳統業務系統向雲原生演進面臨諸多痛點:在業務側,存量業務改造不易,需要面對部署、網絡、運維管控等複雜因素;在技術側,雲原生基礎設施能力尚存不足,并且在遷移演進過程難以做到平滑、無感知。
為此,網易數帆提出了“縱”“橫”架構實踐。裴斐介紹,“縱”是解決技術難題,保障各類業務可落地,從時間線角度,分經典技術棧(如Spring Cloud,Java 代理流量網關),新晉技術棧(如服務網格、多運行時),持續推進技術能力建設;“橫”則是解決場景難題,保障各種場景可支撐、可演進、穩定性,一則擴大平台覆蓋業務場景的⼴度,提升複雜場景支撐能力,二則解決業務架構演進各階段的支撐難題,如新老共存、互通、穩定性等。

以較為典型的微服務為例,在縱向技術方面,需要分别從微服務框架、服務網格入手,解決微服務框架的痛點與進化,以及服務網格的易用性與性能穩定性提升;橫向業務方面,要實現從微服務框架到服務網格的平滑演進。
具體而言,引入微服務框架面臨适用範圍有限、對業務侵入性大、引入框架帶來的負擔重、框架的升級成本高、治理能力有限、與雲原生架構演進沖突等痛點。網易數帆微服務框架的“縱向進化”,通過應用性能監控(APM)慣用的無侵入 Java Agent 技術實現,核心是将傳統微服務框架需要引入到業務代碼的諸多框架以字節碼增強的方式整合在一個 Java Agent 中,實現了服務治理能力邏輯不侵入業務代碼,最終業務可以一鍵接入服務注冊發現、熔斷降級、限流、監控、配置等全套微服務治理能力。
微服務的另一個縱向技術服務網格則更為複雜,網易數帆聚焦于業務平滑接入和大規模業務集群支撐能力的打造,對于前者打造多協議支持、流量治理、核心組件熱升級、治理能力增強及Envoy 網關等能力,對于後者實現了數據面性能、穩定性提升,控制面大規模集群支撐和多級容災能力。
在“橫向業務”上,從微服務框架遷移到服務網格,需要多注冊中心、統一控制協議、無侵入Agent的能力,解決服務間互相發現和訪問、Agent和Sidecar統一配置與管控、架構升級支撐等問題。網易數帆提出了一個雙引擎多模式服務治理的平台理念,用來指導微服務技術、架構相關的平台建設工作,支持遺留業務、融合形态業務以及新開發業務之間的互相發現、互相調用、統一治理,涵蓋了Agent 模式、Sidecar 模式、Agent+Sidecar模式、多運行時模式、SDK 模式等多種治理模式。

裴斐最後總結了“縱”“橫”架構整合過程的“三字訣”。首先是“快”,架構決策要果決和長遠,制定面向未來的架構決策,時機把控上有效切入。其次是“深”,要對核心技術進行深耕,對架構演進過程中涉及的多種技術,能夠深入掌控,以不變應萬變。最後是“穩”,不管是初态、中間态、終态,架構演進方案要穩字當先,逐步演進。
數據平台:流批一體,數據湖融合實時場景
數據開發模型同樣面臨整合與平滑演進的問題。經典的Lambda架構,是企業在離線鍊路技術率先成熟的背景下低成本完成大數據實時化的得力助手,然而流批分割的硬傷終究随着數據規模的增加和業務實踐的深入而爆發,如數據孤島、研發體系割裂、指标和語義二義性等,因而流批一體、湖倉一體成為近年來新的追求。
如何在既有數據平台的基礎上平滑、低成本地實現這一架構演進?網易數帆為此提出了格式兼容、引擎平權的架構思想,打造流式湖倉服務(Streaming LakeHouse Service),即在主流數據湖表格式(Iceberg、Delta、Hudi等)之上用一個表服務層将數據湖與各引擎橋接,支持流批一體,并形成了開源項目Arctic(github.com/NetEase/arctic)。
對于Arctic,格式兼容是指百分百兼容 Iceberg / Hive 的表格式和語法,引擎平權則是同時支持 Spark 和 Flink 讀寫數據,以及 Trino/Impala 查詢數據。周勁松介紹,Arctic通過實時數據更新、流批一體功能封裝等兩大能力集的打造,不僅支持流批混用場景,更解決了湖倉數據管理和優化等一系列功能、性能問題。前者包括支持主鍵定義、提供性保障、結構自優化保障讀寫效率等,後者包括毫秒級延遲的實時寫入/讀取接口、分鐘級延遲的批量寫入/讀取接口、Flink/Spark/Trino等引擎支持等。
其中,支持主鍵定義是Arctic與數據湖表格式配合的一個關鍵創新,不僅有助于實現更加優化的 CDC,主鍵性約束也是Merge on read(讀時合并)和optimize的基礎,無論對于數據管理還是性能保障都至關重要。

在Optimize層面,Arctic的優化器通過Minor Optimize和Major Optimize相結合,分别對變更數據和基礎數據進行優化(湖倉表數據變更通過三元組的元數據中心感知)。Arctic更多設計思想與實現細節詳見:萬字長文詳解開源流式湖倉服務Arctic 。

此外,Arctic還提供了文件索引、hidden queue、多寫一緻性保障等功能,來确保這一架構在業務落地。
周勁松介紹,在某業務推送營銷分析中,通過Arctic技術的引入,業務将批量分析切換到實時生産,實現生産流程複用,并且優化報表響應時間獲得了10~100倍的提升。
小結
如同ArchSummit的主題——“升級架構思維,支撐業務發展”,無論業務架構還是數據平台,網易數帆架構實踐緊扣業務發展需求,以前沿技術價值變現為目标,由此,技術攻關、架構整合、平滑演進成為現實的訴求。在此背景下,唯有苦練内功,深入理解技術本質,才能掌握架構思維的升級,進而滿足業務需求。
免責聲明:本文僅代表作者個人觀點,與每日科技網無關。其原創性以及文中陳述文字和内容未經本站證實,對本文以及其中全部或者部分内容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關内容。
本網站有部分内容均轉載自其它媒體,轉載目的在于傳遞更多信息,并不代表本網贊同其觀點和對其真實性負責,若因作品内容、知識産權、版權和其他問題,請及時提供相關證明等材料并與我們聯系,本網站将在規定時間内給予删除等相關處理.

