缘何是Serverless架构——阅读笔记08
原文链接:https://mp.weixin.qq.com/s/fBInbPZI6_4_xUEu_Lihdg
Serverless架构是完全基于第三方服务设计的,代码运行在临时的容器中,使用FaaS同时调用BaaS达到数据存储的目的。
FaaS是公有云模型中的创新产品,从经济方面的衡量,使得供应商提供一个简单明了的平台变得可行,用户的代码运行在容器中(例如Docker),这些容器则按照响应的事件构建,例如到API网关的http调用,或者数据流中的一个数据包,诸如此类云供应商可以支持的任何内容。
BaaS早些时候在app开发者中变得非常流行,他们在因特网上寻找一种后台服务可以提供类似数据存储(duh)、事件驱动通知以及一些随着app增长可以横向扩展的东西,这方面BaaS提供的比FaaS更成熟,并且有越来越多的人认识到了这些。这个环节AWS主要是通过Dynamo DB提供服务,对应Azure的Cosmos DB以及Google的Cloud Datastore。
Serverless在我看来,是创造出来实现你不需要创造、维护甚至拥有服务器的存在,在Serverless的世界里,服务器根据你的需求、使用率创建,它可以在后台变化,而用户对此毫无察觉。
-
我们借助微服务模式以跟上快速迭代的脚步,提供多用户接口的REST API接口;
-
Beats不是个毫秒级敏感的应用,它只要求可依靠性以及不算慢的响应;
-
缺乏成本,更重要的是创建维护我们自己服务器的时间在很大程度上投入到了Serverless;
-
基于FaaS和BaaS的每用户付费原则,我可以拥有24*7在线的环境,而并不需要为它们花很多的钱;
-
Beats不需要任何CPU的大幅提升;
-
由于bug少的属性、不存在并发场景,还有执行可扩展模型等等,我们花费在非功能性修复的时间会很少;
-
Serverless框架开发人员创建他们自己的架构概念,这就意味着较少的多样化知识的需求,更重要的是开发人员精确的知道他们所创建的以及这些架构运行的环境即可;