华为云计算 云知识 Serverless 高速发展,华为云推出 FunctionGraph2.0
Serverless 高速发展,华为云推出 FunctionGraph2.0

随着数字经济的快速发展和扩张,传统单体架构和微服务架构愈发难以支撑企业业务转型,导致企业无法快速响应激烈的市场竞争和用户需求,所以越来越多的企业开始寻求应用现代化,而无服务器架构(Serverless)正好可以解决这一难题。

Serverless 技术的兴起,极大简化了 云计算 的编程模型,让开发者无需再关注资源申请、环境搭建、 负载均衡 、扩缩容等服务器相关的底层操作,只要聚焦核心业务上层应用逻辑的开发创新与实现即可,这为企业降本提质增效、企业 数字化 转型和应用现代化带来了希望的曙光。

值得关注的是,在云计算「下半场」,Serverless 在战略方向和新兴技术方面的表现,已经成为各大厂商和 开源 社区的共识。

在单体架构时代,底层设施和开发运维都需要开发者亲力亲为,这不仅降低了开发者的工作效率,也不利于行业的进一步发展。这一过程就好比你全款买了一辆车,不仅需要学驾照还得会开车,用车的时候还会涉及加油、保险、保养等事情及相关费用。

到了微服务时代,开发者只需要自行在云上租赁虚机、容器等基础设施即可,底层搭建可以交给服务提供商,相对减轻了开发者的压力,就好比租车出行,虽然不用关注买车、保养等事情,但仍需要学驾照会开车,使用期间关注车况、路况等等。

为了更好解放开发者生产力,让开发者更加聚焦业务价值,于是 Serverless 架构应运而生。在 Serverless 架构时代,开发者不需要关心底层操作系统、虚拟机、容器等基础设施,仅实现业务逻辑,用时付费即可。这一过程就像是用户打车出行,用时坐车抵达目的地付费即可,连驾照都不需要学,也不需要关注车况、路况等。

因此,Serverless 给用户带来了自动驾驶的体验,它给商业带来了省钱,给业务部署带来了免运维,给 DevOps 带来了单机端的编程体验。

Serverless 高速发展,华为云推出 Function Graph2.0-云投网
 

Serverless 能够解除云对业务的束缚,并提供新的计算模式、新的开发模式、新的使用模式、新的资源概念、新的商业模式和新的服务生态,把云上业务变成无服务器、按需供给、按需计费,帮助企业降本、业务提质、开发增效。

为了帮助更多的企业享受 Serverless 技术红利,作为行业的领跑者华为云在 Serverless 的基础设施上,以华为元戎为底座,推出了华为云 FunctionGraph2.0 以及各项泛化服务,该产品不仅能够支持全场景应用,也可以给用户带来更快弹性、更快上线、更简运维等极致的体验。

华为云 Serverless 函数计算服务 FunctionGraph2.0

FunctionGraph2.0 作为华为云 Serverless 解决方案 重要产品之一,是一项基于事件驱动的函数托管计算服务,开发者只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。

Serverless 高速发展,华为云推出 Function Graph2.0-云投网

随着整个业务对 Serverless 的关注度持续升温,Serverless 的应用场景日趋复杂,这对 Serverless 技术提出了新的挑战。

为了满足用户各种复杂的业务诉求,华为云 FunctionGraph 以华为元戎作为全新内核全面升级,并凭借华为元戎的内置数据系统,成为业内首个支持有状态的函数服务。

相比 1.0,2.0 的版本冷启动时延更低、 弹性伸缩 更快,可提供快速低成本的微服务 Serverless 化改造。华为云 FunctionGraph2.0 旨在打造新一代函数计算平台,帮助更广泛的开发者使用 Serverless 方式,支持更复杂更丰富的应用场景,满足用户多样需求。

比如:视频转码处理属于计算密集型,在处理的时候对资源的消耗很大,而且看视频的用户有很明显的波峰波谷,比如晚上时分用户数量会明显会增加,为了应对这种波峰波谷,传统模式需要提前预估好最大资源需求量,这导致了资源利用率比较低。

使用华为云 FunctionGraph2.0,可以把视频切分、转码、特效处理等以函数的方式上线,让开发者无需提前预估资源量,就能使视频转码成本降低 80%。

在金融领域,传统金融分析师经常要通过 Excel 表格或者 Python 科学计算库来做风险、量化投资评估,随着计算数据量越来越大,无法快速获得计算结果,往往要到第二天才能出结果,无法做到实时评估,从而可能带来投资损失。

基于华为云 FunctionGraph2.0 提供的能力,金融分析师只要在代码中加一些装饰器,就可以将原来单机计算任务自动转化成函数执行,实现单机程序自动并行到集群上运行,带来几个数量级的性能提升。既享受到云上算力优势,又享受到 Serverless 体验。

快速低成本的微服务 Serverless 化改造

从当下的市场现状来看,微服务和函数在未来几年可能是一个共存的形态,当前存在着大量微服务应用,那么如何高效地支撑其 Serverless 化,快速享用到 Serverless 的技术红利,是每个研发需要面对并解决的问题。

Serverless 高速发展,华为云推出 Function Graph2.0-云投网

针对 Web 服务,华为云 FunctionGraph2.0 提供 Http 函数类型,通过 API 网关直接把 HTTP 请求透传给 Web 服务,用户只需把原有的 Web Server 代码打包为一个 Http 函数,即可近乎 0 成本快速完成 Serverless 化改造,享受 Serverless 所带来的弹性、按需收费等优势。

Serverless 高速发展,华为云推出 Function Graph2.0-云投网

除了 Http 函数外,支持自定义 容器镜像 也是兼容原有服务的一种方式。开发者可以直接把容器 镜像 作为交付件提交给 FunctionGraph,FunctionGraph 会把该函数处理成为一个 Http Server,HTTP Server 用于接收函数的所有入口请求,包括事件触发和 Http 函数调用。让开发者无需改造代码或重新编译二进制依赖,本地调测与线上环境一致。同时自定义容器镜像方式兼容了原有容器生态。

将读写时延降低 10 倍,极大拓宽 Serverless 的应用范围

众所周知,大部分应用是有状态的,而当前市面上大部分 Serverless 产品均不支持有状态,开发者在使用过程中需要进行状态访问、存储、失效和并发控制等管理。

与此同时,状态数据需要外置对外部存储频繁读写,导致通信/计算 (序列化和反序列化) 开销变大,而且外部存储难以进行弹性伸缩,不足以支持延迟与吞吐敏感型应用。

华为云 FunctionGraph2.0 不仅支持传统无状态函数,而且支持状态数据内置的有状态函数。

基于有状态函数,开发者可以不用关心状态的存取以及各种锁的操作等,帮助开发者屏蔽状态管理的复杂度,简化应用开发逻辑;有状态函数可以直接访问数据,由于状态数据内置,所以函数无需访问外置存储,较大地降低了通信/计算开销。相比无状态函数,读写时延降低 10 倍,对延迟与吞吐敏感型应用、以状态为中心的计算更具友好性。

比如,在今天的很多游戏场景中,用户每次登陆都需要访问上次的房间、进度数据等状态,如果通过无状态函数则需要频繁访问外置数据,导致时延过长,无法保证游戏竞技最看重的实时体验。

而华为云 FunctionGraph2.0 有状态函数通过读取「记忆」可直接内部访问数据,为用户提供极致流畅的游戏体验。

回顾 Serverless 软件架构的演进历程,最初的 Serverless 负载假设是:短暂、异步、可扩展的并行任务;独立、无状态、不需要瞬时冷启动;易被 Vendor 锁定,这样的假设会导致 Serverless 的应用场景非常受限。

Serverless 高速发展,华为云推出 Function Graph2.0-云投网

随着 Serverless 技术逐渐被大众采纳,应用不断地丰富、复杂。华为云认为,未来,Serverless 技术将朝着更加通用的方向发展,Serverless 支持的负载应当具备如下特征:任意的可并行、可扩展的计算任务;有状态、复杂逻辑的微服务应用;开放、支持多云,这也是华为云 Serverless 努力的方向。

Serverless 或将为互联网行业带来跨越式的变革,接下来会有更多的企业享受到 Serverless 带来的开发红利,Serverless 技术未来可期。

上一篇:FreeType2是什么 下一篇:什么是单主/双主灾备

华为云

面向未来的智能世界,数字化是企业发展的必由之路。数字化成功的关键是以云原生的思维践行云原生,全数字化、全云化、AI驱动,一切皆服务。

华为云将持续创新,携手客户、合作伙伴和开发者,致力于让云无处不在,让智能无所不及,共建智能世界云底座。