在新技术层出不穷的云计算领域,什么样的技术更有生命力?
Serverless无疑是其中之一。
“Lambda是一个零管理的计算平台,你不必配置、启动或监控EC2实例,你不必安装任何操作系统或编程语言环境,你无需考虑规模或容错,也无需请求或预留容量。在不增加你的任何工作量的情况下,能够每小时处理成千上万的请求,且成本非常划算。”
这段话来自亚马逊云科技副总裁、首席布道师Jeff Barr2014年发布的一篇技术博文AWS Lambda – Run Code in the Cloud. 今天看,这段话依然是对Serverless核心价值的精准描述。
不过,如今Serverless的内涵以及应用的深度和广度早已超越了最初的Amazon Lambda。如果说,数年前Jeff Barr的“预言”种下了Serverless这颗种子,如今Serverless已经长成了一棵枝繁叶茂的参天大树。
2023年3月30日,在“全面拥抱Serverless时代”为主题的亚马逊云科技创新大会上,亚马逊云科技大中华区产品部总经理陈晓建分享了Serverless技术的价值、发展历程与最新进展。陈晓建表示,“今天,Amazon Lambda每个月有超过100万的活跃用户。Serverless已经成为帮助企业应对不确定性的有效技术手段。”
17年,从全新概念到Serverless First
在谈论技术价值之前,我们首先要搞清楚Serverless是什么?
很多IT人士可能会说,Serverless不就是无服务器服务嘛,用云的客户不需要部署、配置或管理计算、存储等底层资源,把资源配置、按需扩缩、日常运维这种麻烦事全交给云厂商,客户只要对云资源按需使用、按需付费就好。
没错,这是Serverless比较通俗易懂的基本概念。但是对于不同的技术人员,虽然大家谈的都是Serverless这个词,实际指代的内涵却可能不尽相同。亚马逊云科技首席解决方案架构师费良宏认为,Serverless的概念至少有三层。
第一,基于Serverless的某种具体的计算环境,如Amazon Lambda;
第二,基于Serverless的某类云服务,如数据库服务Amazon Aurora Serverless v2;
第三, 一种可以帮企业敏捷迭代的事件驱动型架构。
自诞生至今,Serverless的内涵之所以变得极大丰富,离不开云市场领导者的不断创新。2006年,亚马逊云科技最早的云服务S3和消息队列服务Amazon SQS就是基于Serverless的。至今,亚马逊云科技已经有了17年的技术积累。在Serverless技术的发展历程中,亚马逊云科技既是开创者和布道师,其本身也是重度用户。
比如,在广度方面,亚马逊云科技已经推出涵盖计算、存储、应用集成、数据库、数据分析等全栈Serverless服务,其中亚马逊云科技全部分析服务均具有Serverless服务选项。在深度方面,亚马逊云科技针对众多Serverless服务深耕细作,从用户需求出发挖掘更多功能和更高性能。如今,亚马逊电商自身的业务有超过一半业务新的部署是通过Amazon Lambda来实现的。
在亚马逊云科技的推动下,Serverless已经成为云计算领域一个公认的发展趋势。2018年,Gartner报告将Serverless Computing列为十大未来影响基础设施和运维的技术趋势之一。Gartner还曾经预测,2025 年将有 50% 以上的全球企业采用 Serverless架构。
从一个新概念到技术趋势,Serverless的迅速普及与云计算非常相似,“就像可能几年前还有很多人害怕用云,但现在就不会犹豫这个事了。当用的人越来越多时,客户的犹豫就会变少。”陈晓建表示。
基于Serverless对企业上云转型价值的洞察,如今亚马逊云科技进一步提出了Serverless First理念(无服务器优先策略)。“Serverless First就是在构建新的应用时首先考虑是否可以首选 Serverless 来实现。”陈晓建指出。
持续进化,从零到坐拥百万用户
目前,全球已经有数百万客户在使用亚马逊云科技的Serverless服务。Amazon Lambda每月被调用的次数超过10万亿次,Amazon DynamoDB数据库服务每天发起10万亿次请求,Amazon Fargate计算每周新发布的任务超过22.5亿。
从用户的角度看,Serverless为什么有如此大的吸引力呢?陈晓建认为,“我们希望客户写的每一行代码都是业务逻辑,Serverless正在让它变为现实。”
当今,无论企业身处传统产业还是新兴赛道,无论过去有多少成功经验,企业面临的不确定性和新变化都在与日俱增。而借助Serverless,企业可以加速应用创新,更好地应对不确定性:
首先,极速响应不可预测性业务
Serverless的典型应用——事件驱动型业务是即时触发的业务,第一次调用时会涉及到系统初始化或镜像的启动等等,如何保证系统响应的实时性一直是用户主要痛点之一。2022年,亚马逊云科技新推出的Amazon Lambda Snapstart可将Lambda函数的冷启动时间降低90%,实现10倍的快速启动性能。智能支付平台Bill.com通过Amazon Lambda Snapstart提高了95%的Serverless冷启动性能。
其次,应对错综复杂的业务诉求
随着企业对数据分析需求的激增,企业需要Serverless的场景不仅是无服务器计算,而是贯穿了数据处理的全生命周期。Serverless可以轻松应对峰值、非频发的复杂工作负载,轻松实现按需扩展。
目前,亚马逊云科技推出了Amazon Aurora Serverless 等六大Serverless数据库,而且旗下全部的数据分析服务都支持Serverless。以数据库服务Aurora Serverless V2为例,其可在几分之一秒内自动扩展到数十万个事务; 以细粒度的增量扩展容量,与为峰值负载预置数据库容量的方式相比,可帮助客户节省高达90%的成本。著名电影评价网站IMDb通过Amazon Lambda的调用,可以轻松应对流量波峰波谷的起伏,实现在1分钟进行80万次的调用。
第三,故障隔离,应对潜在风险
在安全方面,Amazon Lambda融入了潜水艇隔离仓的安全理念,满足企业级生产所需的99.99%高可用。其安全机制包括:执行环境在硬件虚拟化虚拟机(microVM)上运行;每个Amazon Lambda运行的microVM不会跨亚马逊云科技账户共享;每个执行环境只处理一个并发调用。
三大路径,企业拥抱Serverless的正确姿势
Serverless虽好,但企业尤其是采用传统架构的企业,在面对这一新技术时仍然有不少顾虑。近年来,亚马逊云科技在Serverless领域的创新方向之一就是如何让这一技术更好用更易用。为此,亚马逊云科技提出了企业全面拥抱Serverless的三大路径:
路径一:从迁移开始,无需代码改造
很多客户在选择Serverless技术时会担心,企业的架构并不是按事件驱动型来设计的,如果要改成事件驱动型架构才能使用Serverless的话,技术成本就太高了。
为了让企业无缝地在Serverless与非Serverless架构之间管理应用,亚马逊云科技开发了开源工具Lambda Web Adapter,客户无需修改代码,可以随意切换应用程序在Lambda和容器之间转换。基于容器开发的代码,经过镜像打包,也可以交付到Lambda里执行。
路径二:拥抱事件驱动的架构设计
无需代码改造的迁移只是过渡,事件驱动架构可以更快更容易地采用Serverless构建微服务新应用或开发新功能。事件驱动架构(Event-Driven Architecture,EDA)基于事件来解耦应用程序组件。一些常见的场景,比如航空公司订票系统、餐厅服务的点单系统、大量的银行保险业务,都是事件驱动的。
西门子低代码开发平台Mendix借助Serverless服务,提供了更广泛的企业级解决方案及业务场景。比如,Mendix帮助荷兰邮政快递公司PostNL全面改造其核心邮件和包裹投递系统,新系统集成了上百个微服务并稳定运行,每天可以处理4000万个事件。
另外,很多云计算用户熟知的Amazon S3对象存储服务服务是事件驱动架构的典范。其从 2006 年的一个由 8 个独立微服务组成的系统,如今已经进化为超过 235 个不同的微服务。
路径三:尝试Serverless First,降低应用成本
相对于容器和有EC2模式,Serverless可以以更细的颗粒度来做资源的部署,提高资源利用率,降低成本。
“很多用户可能还没有意识到,有非常多的应用现在已经可以通过亚马逊云科技丰富的Serverless服务来实现,而且不需要很深的技术背景,也不需要更改架构才能实现。Serverless为企业赋能的场景,比目前大家看到的要多很多。”
此外,对于企业应用Serverless的障碍,陈晓建表示心态和经验也很重要。“由于Serverless底层的资源是不可见的,一些客户可能担心怎么能保证我的资源是合理的,或者怎么了解到底层用的服务器是哪些,如何查到它的状态等等。使用Serverless需要采用一种新的思维方式,需要关注什么,不需要关注什么。”
关于Serverless技术未来的发展,Jeff Barr表示,目前已经可以看到一些最新的行业趋势,诸如聊天机器人、AI、ML、IoT等应用领域,Serverless能够有效地提供帮助。“在亚马逊文化里,我们信奉:永远是第一天(It’s always Day One)。虽然在Serverless的旅程中,已经走过8个年头,我仍然认为我们才刚刚开始,还有很多要做的事情。”
“Serverless有它适应的场景,它不是万能的,但它却是企业应对不确定性的一个非常有效的工具。”陈晓建表示。
END
本文为「智能进化论」原创作品。