原文链接:Serverless Computing: One Step Forward, Two Steps Back
原文提出的背景是,无服务概念逐步兴起,搜索率赶超了“MapReduce”。在这个背景条件下,来自UCBerkeley的学者们为这股热浪浇了一盆凉水。回顾这篇文章之前,先解释一些名词:
- Faas是什么?
Functions as a service, 指将方法作为服务,是serverless的基础,他比现在流行的微服务的粒度更加细小。 Faas提供了让开发者不必再实时维护服务器的功能,比如现在做一个前后端,用户在网页上上传一个.txt
文件,服务器接收到了文件,开发者打开了这个文件,发现是乱码,还需要对文件进行转码。用了Faas框架之后,开发者提前写好转码的代码,服务器收到文件后自动调用代码将文件转成可读的编码。
还有一个重要特性,就是Faas是事件驱动型架构,意味着没有服务器,没有进程在等待用户命令。比如我们的操作系统就是事件驱动型的,我们点击鼠标发生事件,传给操作系统做出相应的响应。
AWS用户的应用举例
AWS是Amazon云,在当时是第一个开启serverless云服务的公司,同时也是第一大的云公司。
根据AWS的数据,可以将部署在AWS上的应用分为三类:
- 令人尴尬的并行功能
在一些应用中,每个功能的调用是一个独立的任