作者 | 于洪涛
“我们希望让用户做得更少而收获更多,通过 Serverless 化,让企业使用云服务像用电一样简单。”
Serverless 化正在成为全新的软件研发范式,阿里云将坚定推进核心产品全面 Serverless 化,帮助客户更好的实现敏捷创新。
近来,全球正在加速推进云计算的 Serverless 化进程。作为一个革命性的技术,Serverless 的价值,不仅体现在技术层面和开发者层面,更为企业的业务创新带来了价值,并推动商业模式的变革,以获得更强的市场竞争力。
阿里云资深技术专家、Serverless 研发负责人 杨皓然 在接受「科技商业」媒体采访的时候,介绍 Serverless 将带来三大趋势:云产品全面 Serverless 化、应用架构 Serverless 化、组装式研发,并全面介绍了阿里云 Serverless 产品布局与核心价值。
把繁琐的基础工作交出去
向“出门好生活开放服务平台”升级的「高德地图」,增添了更多用户使用场景,业务系统变得更加复杂。这导致系统的波峰波谷更为明显,难以保持系统稳定;而且如果要把业务逻辑放在 APP 上,还会导致 APP 过大且需要频繁升级。
通过对系统架构的深度思考,高德地图决定全面拥抱 Serverless,利用阿里云的 Serverless Devs 开发平台,同时引入函数计算服务来处理业务逻辑。Serverless 免运维、高弹性等优势,不仅降低了开发和运维的难度,还使得其业务逻辑可以在后端实现,降低前端 APP 的负担。
利用 Serverless 之后,高德地图的开发和运维工作变得简单了,而业务支持能力更强了。这正是 Serverless 带来的价值。
阿里云云原生
阿里云 Serverless 研发负责人杨皓然表示,技术只是一种手段,目的是帮助客户解决问题,助力业务成功。Serverless 的本质是,把大规模复杂软件开发过程中,对客户业务创新无关的繁琐的基础工作,交给云服务商来做。
比如,企业为了开发应用,需要先搭建开发环境,做大量资源管理层面的工作。有了 Serverless,这些工作都可以由云服务商来完成。后者的技术能力更强,企业则只需要享受其技术红利即可。
让云服务像用水用电一样简单,是公有云诞生时即有的梦想。直到现在才通过 Serverless 来逐步落实,因为其需要云服务商长时间的技术积累。如今,阿里云的函数计算颗粒度已经缩小为 0.01 核和 128M 内存,实时伸缩则可以在 200-300 毫秒内完成。
自从 2017 年推出第一个 Serverless 服务函数计算之后,阿里云现在已经拥有超过 20 款 Serverless 产品,包括函数计算、Serverless 应用引擎 SAE、弹性容器 ECI、Serverless Kubernetes ASK 等。其中,利用率最高的函数计算,日调用次数已经超过 200 亿次。
在数据库领域,阿里云 PolarDB for MySQL、RDS MySQL、AnalyticDB MySQL 以及 AnalyticDB PostgreSQL 等核心数据库产品也全面 Serverless 化。随后跟进的则是中间件和大数据等更多领域。
让 IT 跟上企业的业务逻辑
一场热映,让「南瓜电影」的日注册用户突破 80 万。在传统的服务器使用模式下,扩容要经历买 ECS、上传脚本到服务器、运行脚本、扩容数据库等过程,耗时4小时。这显然无法应对暴涨流量的挑战,不仅服务的稳定性面临挑战,还会带来业务上的损失。
借助阿里云 Serverless 应用引擎 SAE,南瓜电影在 7 天内全面 Severless 化,零门槛拥抱 K8s,轻松应对热映电影的突发流量。相比传统服务器运维模式,其开发部署效率提升了 70%,成本下降了 40%,扩容效率提升 10 倍以上。
我们都知道,弹性伸缩、按需付费和简化运维,是 Severless 的三大核心价值。
弹性伸缩,就是无需实现部署服务器等底层基础设施资源,当业务快速增长时,能够在用户无感知的情况下把资源弹出来。按需付费,就是按实际使用量来付费,不用为闲置资源买单。简化运维,则能够帮用户省去资源管理的烦恼。
显然,相比传统云计算,Severless 更加贴近企业的业务逻辑。比如,可以简化企业的预算制定工作,因为能够做到有多少业务付多少钱,成本核算非常简单方便。
除了像南瓜电影这样 40% 的直接成本降低,杨皓然表示,Serverless 还可以缩简企业 IT 团队低水平的重复工作,同样数量的开发人员如今可以做更多的事情,这同样也是成本的节约。
从物理机到虚拟机,再到 Serverless 的发展进程,就如同从买车到租车,再到网约车一样。物理机就像买一辆私家车,要自己开车自己维护保养车;虚拟机就像汽车租赁,可以把业务 host 到云上;到了网约车,则完全不用关心车况,通过打车实现按需付费、按需弹性。
二十年前,大量企业还在自购汽车自雇司机,如今这一观念已经被彻底改变。Serverless 化的进程,或许用不了二十年就可以完成。Gartner 预测,到 2025 年就将有 50% 以上的全球企业采用 Serverless 架构。
抹平传统企业的技术鸿沟
「世纪联华」是一家传统零售商超,旗下有 200 多家购物中心、超市和便利店。零售企业搞促销是家常便饭,业务必需。此前曾遇到大促,遭遇爆炸性流量,导致支付等环节出现问题的情况。
现在,世纪联华将会员系统、交易系统、支付系统等迁移到阿里云函数计算上。世纪联华的技术团队不用再管理服务器这些基础设施,只要编写代码上传,函数计算就会准备好计算资源。其促销准备时间从周级缩短到小时级,研发运维提效 30%,成本下降 40%,真正把促销活动变成常态。
随着数字技术的普遍应用,传统企业的数字化转型步伐也越来越快,并且深入到核心业务层面。相比互联网公司,传统企业由于缺乏技术人才,往往无法享受到技术的红利。
Serverless 的出现,正在缩小传统企业与互联网企业的技术能力差距,甚至抹平两者之间的鸿沟。也因为有了线上预警、流量观测等工具,免去了运维负担,应用开发变得更加简单了,无需过高的技术能力和过多的技术团队。这使得世纪联华这样的传统企业的 IT 能力也大大提高了。
“有了 Serverless,2 人的研发小团队,也可以享受 2000 人的大企业研发团队的技术红利”,杨皓然表示。
在小程序、电商大促、音视频转码、AI 算法服务、游戏应用包分发、文件实时处理、物联网数据处理、微服务等应用场景,Serverless 都在发挥巨大的价值。同时,Serverless 正持续与容器、微服务等生态融合,降低开发者使用 Serverless 技术的门槛,促进传统应用的云原生化。
彻底改变软件研发模式
「wolai」是一个面向未来的云端信息协同平台。其研发工程师团队只有 10 个人,要忙着开发和运营,很难把大量精力放在运维服务器上。
在做这款产品之初,wolai 就希望把架构彻底放到 Serverless 上。通过使用函数计算,wolai 的前端工程师们就可以把从前到后的一整套开发流程负责起来,一个很小的团队即可保证研发,实现高速迭代。相比传统架构,使用函数计算可节省 50% 计算费用,人力的投入能够节省一半甚至更多。
Serverless 技术的加持,使得越来越多的企业可以不再关注IT基础资源,而是专注于如何为客户提供更好的服务。这将彻底改变传统的软件开发模式。像 wolai 这样的初创企业,则从一开始就拥抱面向未来的 Serverless。
杨皓然介绍说,云计算的全面 Serverless 化,经历了从产品体系的 Serverless化、应用架构的 Serverless 化和研发模式的 Serverless 化三大趋势。依托于 Serverless 架构,云上研发方式正在发生根本性的改变,朝着组装式开发的方向迈进。
在过去几十年里,企业级应用开发,走过了传统的集中式架构,互联网的分布式架构,再到今天以及未来的 Serverless 架构。云上的组装式研发,实现了软件研发的服务化、模块化、可编排、可组装。基于 Serverless 构建的 IT 架构都可以自适应伸缩,峰值秒级自动扩容、峰谷自动缩容,为企业业务创新奠定基础。
云原生开发是当下的热点,容器技术备受关注,而 Serverless 无疑是云原生的高级阶段。杨皓然认为,企业的传统应用,可以借助容器来实现平台化;而新兴应用,则可以考虑直接迈向 Serverless。
杨皓然介绍,FaaS+Serverless BaaS 作为 Serverless 的核心形态,承载组装式研发的理念,这是 Serverless 的未来。在这个体系内,容器的 Serverless 化是帮助云产品和企业实现 Serverless BaaS 的手段,因此容器的 Serverless 化和 FaaS 是很好的结合。
具体来看,FaaS 的核心价值在于让整个云产品体系及其生态形成一个有机整体,而不是单纯的提供弹性资源。这是 FaaS 和 Serverless Container 根本的不同。当一个云产品 Serverless 化后,那么它就不再是单纯的提供资源,而是要成为构建应用的要素。
未来整个云的产品体系都会全面 Serverless 化,而且这些产品之间通过事件驱动等方式深度集成后,那么用户可以通过 FaaS 组合其他云服务,快速的实现弹性、高可用的应用。
因此,阿里云认可 Berkeley 宣导的 Serverless=FaaS+BaaS。Serverless container 本质上是帮助用户更容易实现 Serverless 化的 BaaS 服务,二者可以搭配起来使用。阿里云认为 Serverless(FaaS+BaaS) 未来会成为解决大规模复杂软件开发挑战的关键,这是云未来发展最重要的价值。
Serverless 技术的发展和应用,目前还处于早期阶段。但Serverless 并不是将来时,已经是进行时,目前,阿里云正在大力推进整个云产品体系的 Serverless 化,并提供高效能的研发平台工具,来承载开发模式的升级。阿里云在 Serverless 领域也坚持走开放路线,通过开源等方式构建繁荣的生态,这也是一项极具价值的探索。