说起近几年一直高歌猛进的技术,不得不提起“Serverless无服务器”。Serverless 作为一种新型的互联网架构,正在推动云计算的下一步发展。
作为云计算的下一个迭代, Serverless无服务器让开发者可以更关注于构建产品中的应用,而不需要管理和维护底层堆栈,且比传统云计算更为便宜,因此无服务器被誉为“开发新应用最快速的方式,同时也是总成本最低的方式”。Serverless 让工程师能以现代化的方法构建软件,只需要关注业务逻辑,更快地把产品推向市场。这也为企业减少了前期投资,可以专注于推动差异化的业务价值,加快投产时间,这些也影响着企业的运作方式,从而能够产生多米诺骨牌效应,在市场竞争中不断获利。
一骑绝尘,始创 Serverless
其实早在2006年,亚马逊云科技发布了其第一个存储服务 Amazon Simple Storage Service (Amazon S3) 就是无服务器架构的,早在“概念”还没有产生时,亚马逊云科技已经完成了服务的搭建,类似的事情屡见不鲜,比如Amazon DynamoDB在2012年发布,在功能上已经具备了后来出现的“云原生数据库”概念的所有定义。
而真正让 Serverless 名声大噪的是2014年,亚马逊云科技发布了业界第一个Serverless计算服务 Amazon Lambda。在过去几年的re:Invent大会上,亚马逊云科技不断在数据库、数据分析、人工智能领域扩展Serverless版图,亚马逊云科技的16年发展史(2006到2022年),也是一部亚马逊云科技创造和深耕Serverless的历史, Serverless演进的历史。
作为无服务器技术的先驱,Amazon Lambda 在采用率方面一直保持领先地位,有一半的函数即服务(FaaS)用户在使用亚马逊云科技的服务。公开数据显示,已有上百万家客户在用 Amazon Lambda 来构建他们的服务。
2019 年是无服务器有重大发展的一年。在这一年的年底,亚马逊云科技发布了 Amazon Lambda 的“预置并发(Provisioned Concurrency)”功能,它允许亚马逊云科技无服务器计算用户使其函数保持“已初始化并准备好在两位数毫秒内响应”的状态,这意味着“冷启动”问题成为过去,行业达到一个成熟点。
而今年re:Invent 2022上,更进一步的发布了 Amazon Lambda SnapStart 实现高达90%的冷启动延时,让用户几乎可以无感知的实现应用的扩展。Serverless 的冷启动速度得到大幅优化,大数据核心产品全面 Serverless 化完成,这宣告 Serverless 技术发展的又一里程碑到来,云产品全面 Serverless 化只剩下时间问题。
而 Serverless 在技术、产品两个方面的成熟,也直接为以上发布铺平了道路。试想如果这些产品不是围绕 Serverless 技术来进行设计的,那么所有构想都将成为灾难——没人能够忍受自动化创建业务流程的同时,还要关心服务器的配置问题。这不只是在说 Serverless 技术好不好用,也是在说创新的门槛到底是高是低。如果你有了一个创意,Serverless 是最简洁的实现和验证手段,降低 Serverless 的使用门槛就是在降低业务的创新门槛——Amazon Application Composer 应运而生。
Composer本质上是一款无代码低代码构建Serverless 应用的工具,进一步推进了Serverless的普惠化,使它能够人人可得。Application Composer的特点在于可以帮助生成部署就绪的项目,例如 IaC 定义文件和 Lambda 函数代码脚手架。在传统开发工作里,配置 Serverless 服务需要理解 IaC(基础设施即代码)的概念,并写一些机器可读的定义文件。这个概念作进一步延展,就变成了“基础设施可编程”。Application Composer 无疑大大降低了开发者对 Serverless 技术的使用门槛,某种程度上也就是加速了企业的创新速度——当然,这也需要企业充分理解云理念,并对云原生相关技术有相对成熟的运用经验。
创新演进,引领Serverless时代
Serverless 并不仅是计算,它已成为云原生数据库、云原生数据分析乃至人工智能的标配。AmazonLambda实质上推动了云计算用户对Serverless的认知,而亚马逊云科技的 Serverless服务之旅并不仅止于计算。亚马逊云科技已经从计算、存储、应用集成、数据库、数据分析、人工智能等多个服务领域全面推进 Serverless 进程。今年,Serverless 的演进也践行了端到端数据旅程,数据服务与人工智能是 Serverless 创新的新高地,而亚马逊云科技全程领跑,率先完成 Serverless 在云服务上的全面布局。无论是技术成熟度还是架构完善程度,都说明了无服务器的时代已经全面到来。
在2013年亚马逊云科技发布了消息流处理的Serverless服务——Amazon Kinesis,可以作为一个可扩展、伸缩的消息流服务去支撑流计算的场景。
在2014年亚马逊云科技发布了大家熟知的重磅的、基于函数的Serverless服务——Amazon Lambda,提出了一种事件驱动的场景,对于以前需要运行虚拟机来运行的代码,现在可以放到 Amazon Lambda里面运行。
在2016年亚马逊云科技发布了BI产品——Amazon QuickSight,去支持BI的场景。同年,亚马逊云科技发布了Amazon Glue,其是一个Serverless的ETL服务,可以在运行ETL任务的同时,不需要管理底层的基础设施。
在2019年亚马逊云科技发布了Amazon LakeFormation,该组件可帮助用户快速构建数据湖,同时对数据湖和数仓的数据进行权限管理。
在2021年12月的 re:lnvent 上发布了 4 个 Serverless 数据分析服务,包括Amazon EMR Serverless、Amazon Redshift Serverless、Amazon MSK Serverless、Amazon Kinesis on-demand 。
在今年大会亚马逊云科技 CEO Adam 的 Keynote 上宣布了Amazon OpenSearch Serverless(Preview),这表示现在所有亚马逊云科技提供的数据分析服务已全部实现了 Serverless 无服务器化。亚马逊云科技已经先在数据分析 PaaS 服务领域实现了数据仓库、大数据平台、流式数据分析的无服务器化,将整个数据 Serverless 能力拓展到了全栈。
在re:Invent 2022 大会现场,Amazon.com 副总裁兼首席技术官Werner Vogels 的演讲中,有一个很有意思的案例 Trustpilot 。作为一个第三方客户评论网站,Trustpilot 提供了易于阅读的关于企业客户满意度的统计数据以及来自个人购物者的完整评论。选择“事件驱动”的全 Serverless 架构后,以一个鲜花店的KOL为例,她喜欢在 Trustpilot 写她的评论,她的评论在一开始进行 AmazonSNS 专题上,这个专题下 20 个订阅者接入AmazonSQS,每个人都可以提供同步的 Amazon Lambda 还有亚马逊云科技的其他的服务。要把评论公布出去,发起的过程需要存储数据,可以伸缩性的,而且性价比比较高的存储平台,非 Amazon DynamoDB 莫属。
与此同时,Trustpilot 可以支撑黑色星期五之类大型购物节带来的流量,而不需要担心任何流量陡增对基础设施的掣肘。同时,开发团队可以继续集中在他们产品的发布和其他方面的工作,专注于业务代码。最后一点,是安全合规,基于亚马逊云科技各类监控与安全合规服务,Trustpilot 可以保证 100% 的评论的合法性。
越来越多的数据服务,客户要求其易用性,要求不去管理底层的基础设施,越来越走向无服务化,Serverless 已经成为一种不可逆的趋势和云计算的新常态。无论是普通业务用户还是数据分析师、数据科学家等用户直接基于 Serverless 的产品,可以快速开展工作。利用无服务器架构解决业务挑战,始创者亚马逊云科技为开发人员提供了足够大的广度,由亚马逊云科技所引领的Serverless时代已经全面到来。