2024CTIS-文章详情页顶部

云上开发新范式:Serverless的必然与应然 | 飞天技术观

深度
Serverless让云计算从一种资源真正变成一种服务能力,阿里云也将不遗余力持续创新,并推动这一能力更普及,让云计算真正像水和电一样便利。

本文摘自《云栖战略参考》,这本刊物由阿里云与钛媒体联合策划。目的是为了把各个行业先行者的技术探索、业务实践呈现出来,与思考同样问题的“数字先行者”共同探讨、碰撞,希望这些内容能让你有所启发。

本文根据作者与阿里云云原生应用平台总经理丁宇(花名:叔同)及阿里云资深技术专家、Serverless技术负责人杨皓然(花名:不瞋)的对话整理

从不被看好,到成为数字经济和AI发展的算力基石,中国云计算已经走过了十五年。

如今,云计算正迎来一场新的技术升级——Serverless化,无需考虑底层资源,即可简单、高效地构建和部署应用,实现高可用、易运维、低成本上云。

2023年云栖大会,阿里云继续推陈出新,40+款核心云产品全面Serverless化。

AI时代,Serverless将引领云上开发新范式。这既是产品演进的终极方向,也是服务客户的终极模式。Serverless让云计算从资源变成服务,阿里云也将不遗余力持续创新,并推动这一能力更普及,让云计算真正像水和电一样便利。

云计算下一站

云计算的过去十五年,其实是在“培育”市场,或者说让市场更愿意接受云计算这种服务形态。这个阶段企业关注的是“该不该上云,以及怎么能够更好地上云”。之后,随着越来越多的企业上云,其关注点进而升级,“如何用好云”成为企业的关注核心。

云计算最开始提供的是一种资源。企业用云先要购置资源,然后部署应用,应用的运维管理由企业自己负责,因此仍然存在一些门槛和挑战。

而随着上云成为新常态,如何解决“用好云”的问题,成为必答题。

一方面,从云计算服务方的角度出发,阿里云的核心理念是让客户做得更少、获得更多,能实现“多快好省”地使用云计算,所以也一直在考虑如何更好托管客户的应用、提供更好的云产品。基于这层考虑,阿里云持续对产品进行创新,更适配用户的需求,解决用户的痛点。

例如,企业在管理应用、维护网站的过程中,随着流量的变化,需要调整资源与应用容量匹配,而企业自建的方式处理起来相对较慢,往往不能够满足业务流量快速变化的需要。对应这个痛点,阿里云提供了具备“自适应弹性伸缩”能力的应用托管PaaS产品,如SAE等。

此外,企业一直都有降本增效的诉求,阿里云不仅提供了更普惠的资源,也提供了更优质、更简单的服务,按需弹性、按量计费,这就是阿里云做Serverless的初衷——让客户“用好云”。

另一方面,随着云计算的广泛应用,也逐步让企业和开发者感知到Serverless的好处。

随着微服务、分布式架构的普及,应用的治理、架构的治理,整个数据链路架构体系变得非常复杂。互联网架构膨胀到一定程度较难维护,每一个组件的引入,都会带来容量、管理和性能等开发运维层面的挑战。

头部公司的很多部门或者很多新兴企业,已经拥抱Serverless思路和产品,把更多的基础能力都托管给云平台,由云厂商解决后顾之忧。

在宣布核心产品全面Serverless化之前,阿里云在Serverless上布局已经有六七年了,一直在打磨产品技术,夯实基础。从去年开始,阿里云进入了Serverless的第二阶段,全面加速。

仅仅一年时间,阿里云Serverless化演进历程进入快车道——产品形态更丰富,方案集成更全面,核心产品都在加速向Serverless化迈进,行业客户也看到了更多应用案例,Serverless模式带来的种种好处被广泛感知,客户接受度也在逐步提高。

从某种程度上来说,Serverless现在还不是一个完整的技术栈。整个行业不断地把Serverless技术栈做完整,将非原生Serverless产品和服务形态,逐渐过渡到Serverless化,阿里云也在把整个Serverless产品组合或者技术栈逐步完善、逐步扩展。 

产品全面Serverless化,重磅发布容器计算服务ACS

阿里云正朝着Serverless方向突飞猛进,相对应地,Serverless产品数量和丰富度都在快速增长,业务规模也在快速扩张。

在2023年云栖大会期间,阿里云向业界重磅发布全球首个容器计算服务ACS,率先将容器和资源一体化,重新定义容器算力,算力交付模式升级为Serverless形态,通过ACS实现了容器和Serverless的和谐统一。ACS支撑的负载类型也更加丰富,大幅降低了企业使用容器、K8s的代价和成本。

由此带来的好处非常显著。

第一,极简易用,快速上手:容器与资源一体化,对于用户来说,无需关注底层节点和集群;通过极简的产品设计,用户只需要简单配置即可创建应用。同时,易用性提升50%,无需花费大量时间理解众多复杂的产品和技术概念,大幅降低K8s和用云门槛。

第二,按需弹性,按量付费:ACS在业内首创超灵活Pod配置模式,支持1:1~1:8资源配比,用户可以按需自由选择;同时,ACS还提供了秒级弹性能力,让企业从容应对流量波动;在使用方式与计费模式上,ACS支持按需弹性、资源预留和节省计划三种方式,提供秒级计费模式,给用户提供更多选择,同时成本也更实惠。

第三,场景丰富,灵活调配:ACS与阿里云产品体系深度集成,并支持开源生态和自研产品无缝迁移上云,原生支持网络服务器、微服务应用、Web应用等通用业务负载,支持大数据计算、AI计算、音视频转码等任务类负载,还支持高性能网络服务器、网关系统、中间件、数据库等实时性能敏感类业务。此外,ACS在业内首创算力调配资源复用,让资源在用户负载和云产品负载中灵活调配,减少资源闲置。

第四,自由组合,高性价比:ACS让用户专注于Pod,屏蔽了代际和机型差异,并提供通用型、任务型和独享型三类Pod实例,针对多种应用负载和云产品,可以选择最适合的实例类型,自由组合充分适配,用云成本更低。

除了用云范式的改变之外,阿里云也创造性提出流程式开发的理念,打造了以函数计算FC、事件总线EventBridge、云工作流为核心的开发新范式。

作为国内最早布局Serverless的云厂商之一,阿里云在2017年推出函数计算FC,开发者只需编写代码并上传,函数计算就会自动准备好相应的计算资源,大幅简化开发运维过程。

今年云栖大会期间,函数计算3.0全新升级,业内首发神龙ServerlessGPU架构,冷启动大幅优化,全链路调度延时降低80%,函数执行性能波动率降低70%;作为事件驱动的全托管计算服务,足够轻量灵活,让用户以更少的代码,更好、更快地实现业务创新。相对函数计算2.0,3.0版本突出易用性、高弹性,并且可以和更多阿里云服务无缝集成。

此外,SAE2.0也迎来重磅升级。SAE是一款零代码改造、极简易用、自适应弹性的应用全托管平台,免运维IaaS和K8s,秒级完成从源代码/代码包/Docker镜像部署任何语言的在线应用(如Web/微服务/Job任务)到SAE,并自动伸缩实例,按使用量计费,开箱即用日志、监控、负载均衡等配套能力。 

此次升级,重点攻克弹性能力、用户体验、适用场景等。在弹性能力上,弹性效率优化到百毫秒级,支持缩容到0。并提供闲置计费能力,无请求时CPU不计费。零改造迁移,秒级创建应用,一键灰度。新增支持Web应用类型,从实例托管到流量托管。

为了让企业和开发者更快速、便捷地进行云上开发,阿里云重磅发布云工作流,它是一款强大的面向开发者的流程编排开发工具,全托管、高并发、高可用,帮助用户简化和自动化复杂的云上业务流程和工作流程,更便捷地在云上构建应用。

云工作流的出现,加速了流程式开发范式的到来。随着阿里云提供越来越全面的Serverless产品,很多云产品都变成模块化、API化、服务化,它们可以进行组装,通过拖拉拽的方式就能够构建应用。在Serverless架构下,流程式开发将成为主流。相比传统模式,流程式开发可提效50%以上。

可以想象这样一个场景:当企业产生一项业务诉求,要解决业务问题,先要设计一套系统的业务流程,再将业务流程里每一步拆解处理。比如,业务逻辑设计可能运行在容器上,可能需要跟数据库、云消息队列、OSS等云产品交互,从业务流程上就可以看到一个云资源的拓扑图。

如何自动化简洁地一键部署、执行如上业务逻辑,解决业务问题,关键能力就是流程式开发。用户可以通过事件总线收集和分发事件,通过函数计算快速实现事件处理和定制化的业务逻辑,通过工作流编排多个云服务或自定义的应用组件,从而轻松构建出弹性、高可用的云原生应用。这种开发方法不仅能提高开发速度,还能降低开发和运维成本,进一步推动企业数字化转型。

总结起来,阿里云产品会针对不同领域的需求,从弹性、易用性以及对业务改造的负担角度,做不同的取舍,但所有产品都有一个非常确定的趋势,就是Serverless化。

Serverless最大的难题,不是技术

企业对Serverless云产品的接纳考量主要有几个维度:成本,是不是比之前开源自建更优惠;性能,是不是足够支撑起业务需求;维护成本,比如产品的可观测性、故障诊断能力是否足够,是否全托管免运维低投入;迁移改造成本,是否在可接受范围内。

目前,无论是支撑淘宝天猫的大规模实践,还是对外服务大量客户的使用情况来看,Serverless产品在核心业务场景上应用,没有非常难的技术卡点。

企业的历史包袱和迁移成本也会成为是否选择Serverless的关键因素。

大模型是一个很好的例子。2023年很多开发者都在研发和实践大模型,开发者和企业应用没有历史包袱,所有人都可以使用新的技术栈。因此,在阿里云上,有大量开发者使用Serverless产品构建大模型全新的业务场景。

综合来看,不同类型的企业,对Serverless有不同的思考,也有多种选择。

企业要实现Serverless升级,首先要考虑团队人员、技术储备。当企业有一个很好的基础设施团队,并且建立了平台和内外部各种系统,企业可能会选择一个渐进的演进路径。

如果一家初创公司做技术选型,从投入时间、团队建设、平台打磨、成本的角度综合考虑,会直接选择用Serverless架构。

国内外使用Serverless也有一些差异:一,很多海外客户会把节省人力投入看得更重,使用Serverless产品更容易做到;二,国内客户采用微服务更多,包括很多流行的微服务框架以及配套的工具链、生态,延伸出来的惯性也非常强;但在海外,很多Serverless产品几乎不太追求跟传统微服务框架兼容;三,国内客户更看重开源开放,对技术选型、开放标准,甚至具备多云迁移的能力更加重视。

此外,海外企业价值驱动居多,对PaaS层的厂商绑定接受度更高,更愿意使用云厂商提供的一整套方案帮助企业架构适应云;国内企业这方面担忧更多一些。阿里云采取了并驾齐驱的路线,既有全新架构方案也有兼容利旧方案,通过Serverless化产品以及产品生态的打造,帮助企业更快实现Serverless化。 

同时,积极帮助企业降低“心理包袱”也是阿里云一直在做的事情。提供行业最好的产品技术,创造行业最好的用户体验,降低厂商绑定担忧,需要更加开放的标准,阿里云后续会推出SAE产品的开源版本,通过社区的力量推动万千企业和开发者拥抱Serverless,获取技术红利。

本文摘自《云栖战略参考》2023年10月刊

扫码限时申领纸质版

↓↓

转载请注明出处、作者和本文链接
声明:文章内容仅供参考、交流、学习、不构成投资建议。
想和千万钛媒体用户分享你的新奇观点和发现,点击这里投稿 。创业或融资寻求报道,点击这里

敬原创,有钛度,得赞赏

赞赏支持
发表评论
0 / 300

根据《网络安全法》实名制要求,请绑定手机号后发表评论

登录后输入评论内容

快报

更多

扫描下载App