Serverless:让开发者飞起来的下一个风口!
Serverless:让开发者飞起来的下一个风口!
坚持原创,写好每一篇文章
什么是Serverless呢?相信这是第一次见到这个词的反应。我们把词拆开了来看,server就是服务器的意思,而less就是较少的意思,那么合起来的意思就是对服务器我们较少的处理维护,而是进行自动化运维。使用了serverless后我们将从devOps转变为NoOps,也就是不需要进行运维。
Serverless的构成
Serverless由触发器、FaaS和BaaS构成
FaaS全称是Function as a Service,也就是函数即服务,它可以随时随地的创建使用和销毁函数。
BaaS全称是Backend as a Service,也就是后台即服务,它具有高可用性,保证FaaS的正常使用。
而触发器的作用就是用来触发函数调用,触发器有很多种,我们常用的是http函数触发器
整体流程
一条请求在Serverless的模式下的流程就变成了从用户使用互联网,发送数据请求,http触发器调用FaaS,然后FaaS又调用BaaS。在进行函数调用的时候,函数服务会检查是否有空闲的函数实例,如果没有的话拉取代码创建函数实例,执行函数,然后再把结果返回给客户端。
FaaS的优势
FaaS的优势在于它的资源利用率要比PaaS要高,它最少可以使用零个应用实例,在没有用户请求的时候,函数服务不需要任何的函数实例。FaaS具有很高的响应能力,这得以与它的极速的冷启动能力。所谓冷启动能力就是从资源调度到下载函数代码再到启动运行时容器的创建函数实例的过程。下载代码是比较耗时的步骤,通常是预先下载好以供使用。FaaS分为容器、运行时和代码三部分,这三部分是内到的外,相当于操作系统、软件和使用软件的文档的关系。容器就是我们的操作系统,为代码运行提供基础层,运行时是代码运行的环境比如java环境、Python环境等,代码就是我们定义的函数,其中容器和运行时由云服务器负责,我们需要的做的就编写代码,在请求来的时候会创建相应的函数实例。云服务器商为我们做了很多事情,所有整体上显得FaaS响应速度很快。
总结
这篇文章我们讲了什么Serverless是什么,它的组成部分有哪些,它的执行流程和传统的流程区别在哪里,以及Serverless的重要组件FaaS为什么响应速度会这么快。Serverless会让现在流行的DevOps转变为NoOps,解放运维工作,我相信会成为下一个风口。
- 点赞
- 收藏
- 关注作者
评论(0)