免费下载案例集|20+数字化领先企业人才培养实践经验 了解详情
写点什么

华为云全域 Serverless 技术创新:全球首创通用 Serverless 平台被 ACM SIGCOMM 录用

华为云Serverless团队

  • 2024-08-05
    北京
  • 本文字数:3558 字

    阅读完需:约 12 分钟

大小:1.80M时长:10:29
华为云全域Serverless技术创新:全球首创通用Serverless平台被ACM SIGCOMM录用

华为开发者大会 2024(HDC 2024)在东莞·松山湖圆满结束,期间华为云主办的“全域 Serverless 时代:技术创新引领,赋能行业实践”专题论坛,向广大开发者传递了 Serverless 领域的前沿思考和实践,现场座无虚席。Serverless 展台接待企业客户 300+,媒体宣传累计阅读量 1w+。这一系列数字是华为云全域 Serverless 化的一个“缩影”,千行万业的开发者认可 Serverless 带来的价值并付诸实践,Serverless 的应用场景也逐步从“专用”走向“通用”。


在本次 HDC 大会上,华为云发布一则重磅消息:华为云全域 Serverless 化背后的“基石”——元戎,中稿全球顶尖学术会议 ACM SIGCOMM 2024。该会议在计算机科学领域享有崇高声望,2024 年共接收投稿 366 篇,其中 62 篇被录用,录用率仅为 16.9%。论文《YuanRong: A Production General-purpose Serverless System for Distributed Applications in the Cloud》揭示了华为自主创新的业界首个通用 Serverless 平台,提供通用函数编程模型,高可扩缩、高性能和高效对接后端服务的运行框架,助力华为云构建全域 Serverless 云服务。

一、Serverless 从“专用”走向“通用”

当前,业界现有的 Serverless 产品主要限于事件驱动型应用,然而对于有状态微服务、大数据、HPC、AIGC 等复杂应用,仍然面临如下四大核心技术挑战:

1) 函数间无法高效协同:函数间无法直接寻址,需绕走网关,导致互调性能差。函数间不支持共享内存,无法高效协同,难以满足微服务、HPC 等场景对低时延的诉求;

2) 不确定的冷启动时延:冷启动是 Serverless 性能优化难题之一,尤其在微服务、AIGC 等场景,容器启动时加载大镜像(GB 级)的开销大,加之复杂的应用初始化过程,整个冷启动耗时分钟级,无法按需弹性;

3) 状态外置影响性能:应用程序的状态必须外置到如 OBS 等远端存储,延迟可达数百毫秒,同时远端存储的带宽有限导致吞吐量低,难以满足大数据等场景多任务之间高效数据流转的诉求;

4) 用户函数和后端服务间交互复杂:后端服务通常是有状态的,并为每个客户端维护经过身份验证的活动连接,例如 JDBC 连接,但这些连接状态很难在协作的函数实例之间共享。此外,多个函数的并发操作也会导致分布式事务的问题。

二、元戎首创通用 Serverless 平台

论文介绍了元戎通用 Serverless 平台的一系列关键创新。其中,针对挑战 1 和 2,元戎构建了可扩展的函数系统,实现大规模函数调度、亚毫秒函数互调以及函数极速冷启动等关键技术,支持大规模多形态应用的统一管理和高效运行;针对挑战 3,元戎内置了多语义数据系统,实现分布式共享内存对象以及流数据对象,提供分布式共享内存池,支持多语义数据的高效流转;针对挑战 4,元戎构建了可移植的 Bridge 系统,提供事件和后端服务的标准抽象接口,解耦架构,同时支持连接复用和共享事务等功能。

元戎进一步抽象了面向云原生编程的通用 Serverless 运行时接口,并实现了主流语言的 Runtime。通过这些 Runtime,元戎为开发者提供特定领域的简易编程模式,支持 Web 服务、大数据、AI 训练/推理、HPC 等全域 Serverless 应用。



“元戎通用 Serverless 平台”架构图示

 

更多技术细节请参见华为云在 ACM SIGCOMM 24 发表的论文原文:

链接:https://dl.acm.org/doi/10.1145/3651890.3672216

三、通用 Serverless 客户案例

案例 1:全球销量领先车企基于 Serverless 构建千万级车联网平台

当前,汽车行业的车联网业务对提升产业竞争力和创新能力方面具有重要意义。为了在未来 10 年内满足 6700 万接入车辆的业务需求,某全球销量领先的车企期望构建一个全生命周期车辆管理平台。该平台需要能够承载分钟级的车辆数据上报,每天 100T 的数据增量,并支撑至少 10PB 级以上的存量数据。此外,汽车接入具备典型的波峰波谷特征,白天上下班时请求峰值达 3w+ QPS,夜间请求量相对白天锐减。如何构建支持千万车辆稳定接入的车联网平台,满足业务端到端秒级时延并降低成本,是企业面临的主要问题。

Serverless 方案凭借其按需全自动弹性,按请求计费,免运维等优势,最终在与传统虚拟机/容器方案的对比中胜出。华为云 FunctionGraph(Powered by 元戎)作为核心计算服务,结合 APIG、DIS、EG 等 Serverless 中间件,灵活组装数据转码、分发、转储等业务流程,函数级逻辑开发简单,实例多 AZ 部署保证了高可靠性。



“使用 FunctionGraph 的无服务器 IoV 平台”方案图示


该车联网平台完成 Serverless 架构升级后,弹性能力显著提升,达到业界领先的分钟级 5000+ 函数实例弹性,业务端到端时延从分钟缩短到秒,加速近 20 倍,资源利用率提高了 50%,这与元戎提供的以下两个“黑科技”密不可分。


首先,元戎创新提出了基于进程级快照的函数极速冷启动技术,支持对用户空间指定的进程进行“冻结”(即停止进程,并将该进程运行的所有上下文持久化为快照文件),并在必要时对其进行“解冻”(即通过保存的快照文件来正确恢复进程运行的上下文)。当用户请求触发函数启动时,直接基于函数快照恢复,跳过框架启动、业务初始化等耗时较长的阶段,进一步结合内置数据系统实现快照缓存加速,显著提升应用冷启动性能 90%+。



“元戎函数极速冷启动”原理图示


其次,元戎构建了分级调度架构,以应对生产系统中传统中心化调度架构的性能瓶颈,支持大规模函数实例的并行调度,并有效利用数据局部性,确保高可扩展性,更好地支撑千万级车辆接入的波峰波谷场景。



“元戎大规模分级调度”原理图示


车联网平台自商用上线以来,已经历春节等节假日的考验,峰值每天十几亿次函数调用无错误。该 Serverless 方案现已作为华为云标准车联网解决方案进行推广,帮助更多车企构建高可用、低成本的车联网平台。

案例 2:华为 MetaERP 全面 Serverless 化架构升级

MetaERP 是服务于华为公司生产制造、供应、采购、财务业务的 SaaS 系统,整个系统构成非常复杂,涉及微服务、函数、大数据等多种应用形态。当前架构面临研发成本高、资源成本高等一系列挑战。为了解决这些问题,MetaERP 正在进行全面 Serverless 化架构升级,旨在打造业界首个 Serverless ERP 系统,实现研发和资源成本的双重下降。


1)资产核算业务

资产核算业务(MFA) 支持企业资产从获取到处置的全生命周期管理和交易核算,在资产使用寿命内,按照会计准则和税法要求,系统地计提资产折旧费用。该业务的资源池独立,作业时间集中,具有典型的波峰波谷特征。然而,Java 微服务的启动时延超过 1 分钟,弹性响应慢,业务峰值处理性能不足,日常波谷时仍需要保持最低配置在线,平均资源利用率不到 2%,导致资源成本高。

MFA 业务基于元戎进行 Serverless 化改造,元戎提供 Spring 框架兼容能力,支持通过修改少量配置即可实现存量业务 Serverless 化。进一步,元戎通过函数极速冷启动技术,将业务冷启动时间缩短到 5 秒,弹性性能提升 20 倍。结合自动水平和垂直弹性能力,在无请求时支持业务实例缩容至 0,月均资源消耗降低 70%。


2)销售订单业务

当前,MetaERP 依托平台基础功能(通用逻辑)来支撑上层大量的租户定制业务(扩展逻辑)。以销售订单业务为例,平台通用逻辑动态加载租户扩展逻辑,虽然实现了灵活定制,但两者耦合运行,无法保证安全隔离。

元戎支持租户扩展逻辑以 Serverless 函数方式发布、运行,通过函数物理实例隔离的方式减少风险,保障通用层的稳定。然而,优秀的技术方案往往也难以一步到位,虽然实现了多租户之间的安全隔离,但也引入了两大挑战。

首先,分离后的通用逻辑和租户扩展逻辑通过 RPC 通信,相比原先本地调用,耗时必然增加,且通信次数越多,耗时会越大。元戎提供亚毫秒函数互调能力,通过简化通信链路、亲和性调度、协议优化等关键技术,支撑通用逻辑和租户扩展之间高性能直连互通,实现端到端调用时延 1ms。



“元戎函数互调”原理图示


其次,不同的业务逻辑之间访问同一份数据时的事务一致性问题。元戎提供 Service Bridge 代理后端服务访问,利用路由计算,将同一事务的请求汇聚到同一个 Bridge 函数实例上,将原来分离的事务逻辑重新聚合成本地事务,解决分布式事务一致性问题。



“用户函数通过元戎 Service Bridge 访问后端服务”原理图示

四、总结与展望

近年来,华为云持续构筑全域 Serverless 云服务,推出了一系列竞争力领先的 Serverless 产品,包括函数工作流 FunctionGraph、Serverless 容器引擎 CCE Autopilot、Serverless 应用托管 CAE、云数据仓库 DWS、事件网格 EventGrid 等,高效支撑 Serverless 全面商业化。



“华为云全域 Serverless 化”愿景图示


面向生成式 AI 浪潮,元戎通用 Serverless 将持续聚焦技术创新,突破大模型推理服务实例快速弹性、分布式 KV Cache 池化管理、多模型混部高效协同调度、超大规模分布式训练高可用性等关键技术,构筑大模型推理和训练的高性能、低成本、高可用性关键竞争力。通过这些创新,元戎将助力华为云打造极低成本、极致性能和极优体验的 Serverless AI 解决方案,实现全域 Serverless 化的竞争力领先,帮助千行万业的百万开发者缩短交付周期,提升上云效率,抢占市场先机。

2024-08-05 18:228182

评论

发布
暂无评论

RavenDB起步--使用 RavenDB Studio

喵叔

1月月更|推荐学java——Spring事务

逆锋起笔

spring事务管理 spring ioc java 编程 Spring Java Spring事务

鸿蒙轻内核M核源码分析:LibC实现之Musl LibC

华为云开发者联盟

鸿蒙 内存分配 LibC Musl LibC Musl

电商秒杀系统

🌾🌾🌾小麦🌾🌾🌾

架构实战营

RavenDB起步--第一个 RavenDB 程序

喵叔

TDSQL PostgreSQL执行计划详解

腾讯云数据库

tdsql 国产数据库

ReactNative进阶(三十一): IoC 框架 InversifyJS 解读

No Silver Bullet

​React Native 1月月更 InversifyJS

华青融天加入,龙蜥社区再添科技风险监测领域新伙伴

OpenAnolis小助手

Linux 开源 合作伙伴

为数据库性能调优插上 AI 的翅膀 | 调优测试框架 Matrix 团队访谈

PingCAP

20000字详解大厂实时数仓建设 | 社区征文

五分钟学大数据

数据仓库 实时数仓 1月月更 新春征文

模块1作业

卡西毛豆静爸

架构实战营

架构训练营 毕业设计

dog_brother

「架构实战营」

分享四款H5怀旧小游戏魔塔+伏魔记+三国霸业+寻仙纪

echeverra

前端 游戏

架构实战营毕业设计

VegetableBird

架构实战营 #架构实战营 架构师实战营 「架构实战营」

事件驱动架构在 vivo 内容平台的实践

vivo互联网技术

微服务 云原生 事件驱动架构

RavenDB起步--安装以及示例数据库

喵叔

MySQL 如何解决幻读(MVCC原理分析)

Ayue、

MySQL InnoDB 1月月更

看过来!腾讯文档上架优麒麟软件商店啦

优麒麟

Linux 开源 腾讯 操作系统 麒麟操作系统

TDSQL-A技术架构演进及创新实践

腾讯云数据库

tdsql 国产数据库

Go 语言快速入门指南:Go 读取文本文件

宇宙之一粟

Go 数据读取 Go 语言 1月月更

RavenDB起步--客户端API(一)

喵叔

智联生活行业加速器热门FAQ:物联网企业该如何与华为云合作?

华为云开发者联盟

物联网 华为云 智联生活 智联生活行业加速器 云市场

再谈:我对测试行业发展和自我价值诉求的思考

老张

测试工程师 职场发展

一个cpp协程库的前世今生(二十三)env自动回收

SkyFire

c++ cocpp

一、数据结构

喵叔

TDSQL-C PostgreSQL版的高可用特性

腾讯云数据库

tdsql 国产数据库

Redis:我是如何与客户端进行通信的

华为云开发者联盟

redis 通信 协议 指令 客户端

架构训练营 week6 课程总结

红莲疾风

「架构实战营」

架构实战营模块六作业

Jude

架构实战营

为什么ConcurrentHashMap是线程安全的?

王磊

基于Flink CDC打通数据实时入湖

五分钟学大数据

flink 1月月更

华为云全域Serverless技术创新:全球首创通用Serverless平台被ACM SIGCOMM录用_Serverless_InfoQ精选文章