当前位置: 首页 > article >正文

穿越不确定性,Serverless已翻过千山万水

导读:Serverless不是万能的,却是企业应对不确定性的有效技术手段。

在新技术层出不穷的云计算领域,什么样的技术更有生命力?

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

本文为「智能进化论」原创作品。


http://www.kler.cn/news/9778.html

相关文章:

  • Mybatis(五)------Mybatis执行Mapper接口的方法流程
  • 学习经验分享【NO.23】深度学习目标检测理论知识(持续更新)
  • DETR【论文阅读】
  • 【Android开发经验】-- 如何实现RecyclerView子项的点击事件?
  • 基于springboot+mybatis的图书购物网站
  • 《Java8实战》第4章 引入流
  • 【voliate 关键字】
  • 行为型模式-命令模式
  • BAT程序员来说一说互联网大厂的秋招和实习,什么时候开始秋招,要不要准备实习? 没找到实习怎么办?实习是不是重要? 如何选择实习的offer?
  • MySQL开发04-MySQL优化器的提示功能
  • 小黑子—Java从入门到入土过程:第六章
  • 【openAI】调用gpt-xxx模型时显示网络连接错误(Error communicating with openAI...)
  • 封仲淹:OceanBase开源技术生态全景解析
  • Java基础教程之Object类是怎么回事?
  • 采用多种方式实现项目的查询多级缓存(四)
  • Java模拟rank() over()函数获取分组排名的方法设计及实现
  • 书 | 图理论 | 2020年GraphSage提出者William L. Hamilton《图表示学习》
  • Systemverilog中Constrained random value generation的记录
  • linux之pthread_join函数
  • 安全防御 --- APT、密码学
  • 《数据库系统概论》第三章课后习题 (4个表+三建工程项目)
  • JAVA所有版本特性【JAVA 1.0 - JAVA 20】
  • 圣戈班Saint-Gobain EDI需求分析
  • 计算机网络 - TCP的效率与特性
  • 从0到1基于ChatGLM-6B使用LaRA进行参数高效微调 审核中
  • 49.现有移动端开源框架及其特点—MACE( Mobile AI Compute Engine)
  • 3、ThingsBoard使用jar包单机部署
  • cadence allegro学习记录(四)
  • Golang每日一练(leetDay0030)
  • CDH 之 Kerberos 安全认证和 Sentry 权限控制管理(一)