- 《架构师》2023年5月
- InfoQ中文站
- 2975字
- 2024-04-15 14:45:54
探索17年,亚马逊云科技重新定义Server less
作为云计算发展到一定阶段的必然产物,Serverless具有最大程度利用资源,减少空闲资源浪费,降低学习、使用及运维成本以及提升开发效率等优势。目前,已经有很多企业陆续采用Serverless战略来解决实际业务中工作负载的难题,越来越多跨国大型企业以及初创企业正在积极尝试通过Serverless增加业务的敏捷性、实现成本的优化。
但即便如此,围绕Serverless技术的争论也依然存在,其焦点在于,Serverless是否能在不断变化的市场环境中,为企业业务创新持续赋能?Serverless是否代表着云计算发展方向?云厂商又该如何迎接挑战,提供行业需要的Serverless服务……
在3月30日的亚马逊云科技创新大会上,Serverless全栈能力再次被提及。“Serverless有4个非常重要的优势:帮助企业创意更快地走向市场、成本更低、大规模适配,以及能更快地建立更好的应用程序”亚马逊云科技首席布道师Jeff Barr在开场演讲中即强调。整场大会也对上述业内比较关注的问题进行了解答。
Serverless全栈能力如何炼成?
2012年Serverless被首次提出,其中文解释为“无服务器”,但其本质并非如此,而是“服务无感化”,形容将服务器全权托管给云厂商,用户只需要聚焦于业务逻辑代码,再根据实际请求进行弹性伸缩,无需关心资源是否足够。
而Serverless真正被大家熟知的时间节点是2014年。那一年,亚马逊云科技推出了Amazon Lambda,开启了云计算的新时代。至此以后,云厂商们便开始纷纷发力,使得Serverless产品、服务、平台如雨后春笋般纷纷涌现。
作为Serverless领域的先驱者,亚马逊云科技第一款Serverless产品可以追溯到2006年,在“Serverless”概念还没有产生时,亚马逊云科技已经完成了服务的搭建,发布了其第一个存储服务Amazon S3就是无服务架构的,允许用户创建、罗列、删除桶(Bucket),自由上传和下载文件,用REST和SOAP的方式灵活访问数据。如今Amazon S3几乎成为对象存储的事实标准,各大厂商基本都会兼容Amazon S3,据统计,截止到2023年,Amazon S3上存放着280万亿个对象,平均每秒要响应1亿多个请求,每秒需要执行40亿次校验计算来保证数据的完整性。
回头看,从2006年发布第一款产品至今,亚马逊云科技在云计算领域的探索已走过了17个年头。
2013年亚马逊云科技发布了Amazon Kinesis,可以作为一个可扩展、伸缩的消息流服务去支撑流计算的场景。
2014年对于亚马逊云科技和云计算的发展来说都是具有重要意义的一年,这一年,亚马逊云科技发布了业界第一个Serverless计算服务Amazon Lambda,提出了一种事件驱动的场景,对于以前需要运行虚拟机来运行的代码,现在可以放到Amazon Lambda里面运行,开创了业界Serverless的先河。
2016年亚马逊云科技发布了Amazon QuickSight,用来去支持BI的场景。同年也发布了Serverless的ETL服务——Amazon Glue,可以在运行ETL任务的同时,不需要管理底层的基础设施。
2017年推出适用于容器的Serverless计算服务Amazon Fargate被称为“改变游戏规则”的计算服务。
2019年,亚马逊云科技发布Amazon LakeFormation,帮助用户快速构建数据湖,同时对数据湖和数仓的数据进行权限管理。
2020年,Amazon Aurora Serverless v2发布,提供全托管的、按需自动缩放的关系型数据库服务。
2021年12月的re:lnvent上发布了4个Serverless数据分析服务,包括Amazon EMR Serv erless、Amazon Redshift Serverless、Amazon MSK Serverless、Amazon Kinesis on-de mand,用来帮助客户企业挖掘数据,客户只需要考虑运行这些服务的基础设施以及管理集群,并未需要使用的资源付费即可。
2023年2月,Amazon OpenSearch Serverless正式上线,用来帮助用户轻松执行交互式日志分析、实时应用程序监控、网站搜索等工作,当用户搜索和分析PB级的数据时,运行工作负载将会更容易更简单,甚至不需要考虑基础设施管理。Amazon OpenSearch Serverless的发布,也代表着现在所有亚马逊云科技提供的数据分析服务已全部实现了Serverless无服务器化,让无服务器数据分析服务领域的技术创新达到了一个新的高度。
亚马逊云科技从2006年起就开始用Serverless理念构建云服务,17年间,亚马逊云科技持续进化,帮助来自各行各业不同规模的企业摆脱无差异化的繁重工作,提升业务敏捷性,降低运维及管理压力,聚焦于业务本身,实现数字化转型与持续创新。如今,已经有更多的企业使用Serverless服务,云计算的发展已经进入了新的时期——Serverless时代。
不止于计算,全行业拥抱Serverless时代
如前文所述,如果将全栈Serverless能力看做是Serverless纵深发展的必由之路,那么从横向来看,Serverless在不同领域的服务能力也十分重要。
就亚马逊云科技Serverless而言,不断演进的Amazon Lambda推动了云计算用户对Serverless的认知,而其Serverless服务之旅并不止于计算,已经从计算、存储、应用集成、数据库、数据分析、人工智能等多个服务领域全面推进Serverless进程。
本次亚马逊云科技创新大会,亚马逊云科技大中华区产品部总经理陈晓建分享了IMDb(Internet Movie Database,互联网电影数据库)的Serverless重构之旅:通过Ama zon Lambda的Serverless设计,IMDb能够将核心业务拆分开,使业务更容易扩展维护和演进。
在“应用创新”的时代,亚马逊云科技通过架构、技术、功能上的创新,将云应用更好地推向千行百业,帮助企业降本增效,聚焦业务,从而实现业务创新和增长。
Serverless First,在不确定中把握确定性
全栈Serverless和多领域的Serverless服务,为不同行业的企业提供了降本增效的可行性方案,但近几年,全球市场环境日趋复杂,不稳定性和不确定性因素明显增加,企业也需要学习在变化中如何自处。
“当前,企业面临更多不确定性,即有风险又有机遇,不可预测、错综复杂以及潜在风险是不确定性的三个主要特征。”本次亚马逊云科技创新大会的主题演讲中,亚马逊云科技大中华区产品部总经理陈晓建总结道,并表示,Serverless是帮助企业应对不确定性的有效手段:首先,快速Time-to-Market可以快速响应不可预测;其次,全栈Serverless服务能够应对错综复杂的诉求;最后,故障隔离能力可以应对潜在风险的挑战。
陈晓建也分享了Serverless的三个进阶路径:第一,从迁移开始,无需代码改造;第二,拥抱事件驱动的架构设计,灵活应对不确定性;第三,采用Serverless First策略构建新的应用程序,降低应用成本。
Serverless理念下的事件驱动架构(Event-Driven-Architecture,简称EDA),可以带领事物面对无序的不确定性,持续向前。具体来讲,通过构建事件驱动架构,企业可以获得一个松散耦合的系统,该系统具有较低的依赖性、更高的可用性和可进化性等优势,可以提高企业开发人员的敏捷性,帮助企业构建可靠、可扩展的应用程序,加快功能发布速度,进而更好地应对市场不确定性及市场需求变化。
目前,亚马逊云科技常见的构建事件驱动架构的服务包括Amazon EventBridge、Am azon Step Functions、Amazon Lambda等,几乎所有亚马逊云科技提供的云计算服务,都实现了对于事件的支持,能够帮助企业客户更加轻松地构建事件驱动架构,最大化发挥其优势与价值。
基于事件驱动的全Serverless架构,第三方客户评论网站Trustpilot成功支撑了类似于黑色星期五等大型购物金带来的流量,无需再担心任何流量陡增对基础设施的掣肘,帮助开发团队专注于业务代码;同时,借助亚马逊云科技各类监控与安全合规服务,Trustpilot还能充分保证评论的合法性。
此外,亚马逊云科技还提供了很多开发工具,帮助企业轻松地实现从复杂服务器架构到组件解耦的无服务器计算的转变。例如,企业可以通过Amazon CodeCatalyst解决软件开发和交付过程中的各种问题,加速应用程序交付,帮助开发团队节约成本;而Amazon SAM(Serverless Application Model)实现了对无服务器应用的标准化和模板化管理,可以极大节省Serverless应用的管理成本,有更多资源用于产品研发和创新;企业还可以使用Amazon Application Composer应用编排服务简化和加速构架、配置和构建Server less应用。
至此,我们已经可以回答开篇提到的问题:基于Serverless的极致敏捷、高扩展性和低成本的优势,企业能释放更多精力聚焦业务创新;而借助于面向于各行各业的Serverless服务,企业可以节约成本,便捷转型;此外,事件驱动架构则能够帮助企业面对风云诡谲的市场环境,控制风险。
正如本次亚马逊云科技创新大会中所提的“Serverless First”:Serverless时代已来,企业应当考虑借助Serverless的力量,为业务发展和创新持续赋能。