Serverless 的价值

1.jpg

做者 | 许晓斌 阿里云高级技术专家数据库

回顾架构的演进过程,咱们不难发现,研发运维人员正在逐渐地把关注点从机器上移走,再也不去管理机器。编程

其实咱们都知道,虽说是 Serverless,但 Server(服务器)是不可能真正消失的,Serverless 里这个 less 更确切地说,应该是开发者不用关心服务器的意思。这就比如现代编程语言 Java 和 Python,开发不用手工分配和释放内存,但内存依然在哪里,只不过交给垃圾收集器管理了。称一个能帮助你管理服务器的平台为 Serverless 平台,就比如称呼 Java 和 Python 为 Memoryless 语言同样。后端

可是,若是咱们把目光放到今天这个云的时代,那么就不能狭义地把 Serverless 仅仅理解为不用关心服务器。云上的资源除了服务器所包含的基础计算、网络、存储资源以外,还包括各类类别的更上层的资源,例如数据库、缓存、消息等。缓存

Serverless 的愿景

2019 年 2 月,UC 伯克利大学发表了一篇标题为《Cloud Programming Simplified: A Berkeley View on Serverless Computing》的论文,论文中也有一个很是清晰形象的比喻,文中这样描述:安全

在云的上下文中,Serverful 的计算就像使用低级的汇编语言编程,而 Serverless 的计算就像使用 Python 这样的高级语言进行编程。例如 c = a + b 这样简单的表达式,若是用汇编描述,就必须先选择几个寄存器,把值加载到寄存器,进行数学计算,再存储结果。这就比如今天在云环境下 Serverful 的计算,开发首先须要分配或找到可用的资源,而后加载代码和数据,再执行计算,将计算的结果存储起来,最后还须要管理资源的释放。服务器

论文中所谓的 Serverful 计算,是咱们今天主流的使用云的方式,但不该该是将来咱们使用云的方式。我认为 Serverless 的愿景应该是 Write locally, compile to the cloud,即代码只关心业务逻辑,由工具和云去管理资源。网络

Serverless 的价值

在对 Serverless 有一个整体的抽象概念以后,也须要具体了解 Serverless 平台的主要特色,同时这些特色也是 Serverless 核心优点的体现。架构

1. 不用关心服务器

管理一两台服务器可能不是什么麻烦的事情,管理数千甚至数万台服务器就没那么简单了。任何一台服务器均可能出现故障,如何自动识别故障,摘除有问题的实例,这是 Serverless 平台必须具有的能力;此外,操做系统的安全补丁升级,须要作到不影响业务,自动完成;日志和监控系统须要默认打通;系统的安全策略须要自动配置好以免风险;当资源不够时,须要可以自动分配资源并安装相关的代码和配置,等等。并发

2. 自动弹性

今天的互联网应用都被设计成可伸缩架构,当业务有比较明显的高峰和低谷时,或者业务有临时的容量需求时(好比营销活动),Serverless 平台都可以及时且稳定地实现自动弹性。为了实现这个能力,平台须要有很是强大的资源调度能力,以及对应用各项指标(如 load、并发)很是敏锐的感知能力。框架

3. 按实际资源使用计费

Serverful 的方式使用云资源,是按占用而非使用计费的,例如用户在云上购买了三台 ECS,那么无论用户实际使用了这三台 ECS 多少的 CPU 和内存,他都须要支付这三台 ECS 总体的费用。而在 Serverless 模式下,用户是按实际使用的资源付费的,例如一个请求实际使用了一台 1core2g 规格资源 100ms 的时间,那么用户就只须要为该规格的单价乘以时间(即100ms)付费。相似的,用户若是用的是 Serverless 数据库,那么就只须要为 query 实际消耗的资源,以及数据存储的资源付费。

4. 更少的代码,更快的交付速度

基于 Serverless 架构的代码一般会重度使用后端的服务,将数据、状态管理等内容从代码中分离出去;此外,更完全的 FaaS 架构则把代码的 Runtime 也交给了平台管理。这就意味着,一样的应用,Serverless 模式下的代码相比 Serverful 模式会少不少,所以不管是从分发仍是启动,都会更快。Serverless 平台也一般可以提供很是成熟的代码构建发布、版本切换等特性,提高交付速度。

做者简介

许晓斌,阿里云高级技术专家。目前负责阿里集团 Serverless 研发运维平台建设,在这以前负责 AliExpress 微服务架构、Spring Boot 框架、研发效率提高工做。《 Maven 实战》做者,曾经是 Maven 中央仓库的维护者。

相关文章
相关标签/搜索