共计 2505 个字符,预计需要花费 7 分钟才能阅读完成。
【点击理解更多网易技术】
数字化、自动化、智能化的主旋律下,架构的进化也在提速。在近日举办的 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(http://github.com/NetEase/arctic)。
对于 Arctic,格局兼容是指百分百兼容 Iceberg / Hive 的表格局和语法,引擎平权则是同时反对 Spark 和 Flink 读写数据,以及 Trino/Impala 查问数据。周劲松介绍,Arctic 通过实时数据更新、流批一体性能封装等两大能力集的打造,不仅反对流批混用场景,更解决了湖仓数据管理和优化等一系列性能、性能问题。前者包含反对主键定义、提供唯一性保障、构造自优化保障读写效率等,后者包含毫秒级提早的实时写入 / 读取接口、分钟级提早在 Optimize 层面,Arctic 的优化器通过 Minor Optimize 和 Major Optimize 相结合,别离对变更数据和根底数据进行优化(湖仓表数据变更通过三元组的元数据中心感知)。的批量写入 / 读取接口、Flink/Spark/Trino 等引擎反对等。
其中,反对主键定义是 Arctic 与数据湖表格局配合的一个要害翻新,不仅有助于实现更加优化的 CDC,主键唯一性束缚也是 Merge on read(读时合并)和 optimize 的根底,无论对于数据管理还是性能保障都至关重要。
在 Optimize 层面,Arctic 的优化器通过 Minor Optimize 和 Major Optimize 相结合,别离对变更数据和根底数据进行优化(湖仓表数据变更通过三元组的元数据中心感知)。
此外,Arctic 还提供了文件索引、hidden queue、多写一致性保障等性能,来确保这一架构在业务落地。
周劲松介绍,在某业务推送营销剖析中,通过 Arctic 技术的引入,业务将批量剖析切换到实时生产,实现生产流程复用,并且优化报表响应工夫取得了 10~100 倍的晋升。
小结
如同 ArchSummit 的主题——“降级架构思维,撑持业务倒退”,无论业务架构还是数据平台,网易数帆架构实际紧扣业务倒退需要,以前沿技术价值变现为指标,由此,技术攻关、架构整合、平滑演进成为事实的诉求。在此背景下,唯有苦练内功,深刻了解技术实质,能力把握架构思维的降级,进而满足业务需要。
【点击理解,品牌流动,真实有效👆】