Skip to main content
 Web开发网 » 站长学院 » 浏览器插件

带你了解Serverless无服务器架构

2021年11月03日5580百度已收录

Serverless的发展轨迹

2012年,Serverless 这个单词第一次出现,由 Iron 公司提出,字面意思就是不需要服务器。但是真正被大家所熟知,是在2014年AWS推出Lambda的时候。Lambda产品的推出开启了云计算的新时代,之后所有的大厂都在跟进,比如微软、谷歌、IBM都先后推出自己的Serverless产品。

国内是在2017年的时候,阿里云和腾讯云先后推出了自己的Serverless平台。但这个时候,都是指FaaS(Function as a Service)。接着到2018年,大家开始渐渐接触到Serverless,更多还是支付宝小程序和微信小程序的云开发平台。随后到2019年,国内其他厂商如百度、华为、字节也都开始做Serverless,现在Serverless已经成了各大云厂商的标配。

2019 年,Serverless 被 Gartner 称为最有潜力的云计算技术发展方向,并被赋予是必然性的发展趋势。Serverless 从底层开始变革计算资源的形态,为软件架构设计与应用服务部署带来了新的设计思路。

什么是Serverless

无服务器运算(英语:Serverless computing),又被称为函数即服务(Function-as-a-Service,缩写为 FaaS),是云计算的一种模型。以平台即服务(PaaS)为基础,无服务器运算提供一个微型的架构,终端客户不需要部署、配置或管理服务器服务,代码运行所需要的服务器服务皆由云端平台来提供。国内外此类型产品,诸如 Tencent Serverless、AWS Lambda、Microsoft Azure Functions 等。

Serverless有啥用?

在软件架构设计的过程,一样遵循合久必分、分久必合的规律。

我们觉得单体应用(合)不好,所以我们把单体拆了,分了一堆微服务(分)出来。单体的问题解决了,又发现微服务治理又是一堆难题。突然觉得隔壁单体看起来还不错,因为这么多微服务搞起来太复杂了,而单体就一个,我们是不是应该回归单体呢?

我们为什么去想Serverless?因为在每一个时代,基础设施是不一样的,当发现因为基础设施落后,我们在架构上想了很多办法,通过应用不断的拆分,来解决业务应用难题;当基础设施在提高的时候,于是我们架构设计又开始回归,这是不停循环的过程。

当然重点不是为了拆分而拆分,最根本的目的是还是解耦,让专业的事情交给专业人士,让开发人员可以专注在产品代码上,而无需管理和操作云端和本地服务器。

在传统单体架构阶段,应用自己申请虚拟机,然后安装环境,管理环境。发布的时候开发人员还要关注底层硬件资源。

而到了云原生阶段,底层的资源池变成了更轻量化的容器,可以做到和硬件隔离,无需关注硬件。通过k8s实现容器的资源编排和调度,通过Devops持续集成和交付,整个编译、构建、打包、部署都交给devops来自动完成,使开发人员进一步专注。

到了ServerLess阶段,那就是完全的服务化,你能够看到和使用的只能够是通过API网关暴漏给你的API了,对于资源层可以做到彻底意义上的不关心。

Serverless是对用户强调No Server,本质并不是不需要服务器,而是将服务器全权托管给平台,用户不用再去关心,只用把业务部署到平台上即可,平台可以根据实际请求进行弹性伸缩,不用关心资源问题,可以真正和底层基础架构解耦。

带你了解Serverless无服务器架构  Serverless 第1张

Serverless的优势

Serverless是BaaS+FaaS,其中云函数是核心要素。所谓云函数,实际上就是将我们传统代码,拆分成了更细的颗粒,部署在云端。这就是所谓的云函数,这些函数可以提供服务,FaaS=Function as a service。

在传统业务中,开发上线需要团队每个人开发一部分,然后合并代码联调,然后再进行测试环境部署,正式环境部署,运维等。但在云函数时代下,开发者只需要开发自己的那部分函数即可。

Serverless是一种概念而不是某种技术,可以让开发周期简化到极致,基本上写完业务代码一扔就ok了。

未来的趋势

Serverless以后一定成为云计算的主流,不是技术决定的,是经济活动的发展规律决定的,是必然的。

IT软件研发的趋势也将从全能手转到只关注具体点上,专业的人做专业的事情,分工明确,释放开发人员的精力,只专注真正有价值的事情。

未来零代码+Serverless将是绝配,利用零代码平台可视化拖拽实现通用性需求,而对于个性化需求,又通过Serverless实现。开发人员要做的事情专注到云函数即可。业务人员通过组装来实现自己的需求。

评论列表暂无评论
发表评论
微信