首页 > 其他分享 >大火的serverless到底是什么?

大火的serverless到底是什么?

时间:2022-12-13 20:37:22浏览次数:37  
标签:serverless Serverless 需要 架构 函数 到底 实例 大火 资源

云计算技术的发展,使得用户只需要关注当前需要的底层资源,通过云基础设施可以自动完成资源的供给和伸缩;通过Kubernetes、Mesos等资源调度和编排平台对业务屏蔽了集群和机器资源管理的复杂度,不仅提高了资源的利用率,也通过为用户提供完善的环境管理和资源管理平台,提高了业务效率。但在这种使用场景下,用户仍然需要预估需要的资源,并在云平台上预先进行分配,而不管这些资源是否会被充分利用。因此对用户的容量预估和资源预估提出了很高的要求,如果预估和实际有很大偏差,就会导致很大的资源浪费,或者出现资源不足而影响业务使用,为了解决这个问题,Serverless应运而生。

Serverless中文可以翻译为“无服务器架构”,是最近几年兴起的一种新型架构理念,Serverless不是指不需要服务器,主要是强调在Serverless下,业务不再需要固定的服务器资源,而是按需分配相应的服务资源。当业务请求比较多时,会多分配相应的服务实例;当业务请求比较少甚至为零时,可以不分配任何服务器资源。Serverless架构和之前的架构相比,最大的差异是:业务服务不再是固定的常驻进程,而是真正按需启动和关闭的服务实例。因此Serverless架构可以提供如下两点优势。

(1)按需使用的资源管理Serverless架构下,容量规划成为历史,对一个业务进行准确的容量规划通常来说是特别有挑战性的事情,需要考虑的因素很多,通过Serverless的即需即用,不再需要容量规划,减少了业务架构和运维的复杂度。同时对于按需使用的资源管理,业务只需要为真正使用的部分付费,从而减少了不必要的资源浪费。

(2)简化业务运维复杂度在微服务架构下,微服务由各个功能模块,以及功能模块之间的通信组成,微服务开发者不仅需要关注业务功能,还要花费很多精力在完成不同微服务的交互和通信管理上。在Serverless架构下,你只需要实现具体的功能函数并提交给Serverless,各功能函数之间的交互由Serverless接管,开发者不再需要关注功能函数交互的细节。

在简化微服务管理复杂度上,Serverless和Service Mesh的目标是一致的,都是将微服务通信和服务治理相关的非功能需求从业务中剥离,对于Serverless是交给Serverless框架负责处理,对于Service Mesh是下沉到底层,成为通信基础设施的一部分。

在Serverless中,按需执行的代码片断称为“函数”,它是Serverless资源管理和调度的基本单位,因此Serverless有时也被称为FaaS(Function As A Service,函数即服务)。Serverless架构大体由如下几个部分组成。

(1)函数管理Serverless需要对用户编写的函数进行管理,通过一定的方式将用户函数变成可调度、可运行的实例。为了支持多个语言的Serverless函数,函数管理需要针对每种语言定义函数规范和标准,提供相应的实现机制。

(2)事件触发器事件驱动是Serverless非常重要的组成部分,Serverless一般会定义一组关注的事件类型,并提供相应的事件触发和订阅框架,函数需要实现注册好关注的事件类型,事件触发时,Serverless框架查找关注这个事件的函数,触发函数的具体执行。

(3)函数的路由和伸缩管理在很多Serverless实现中,函数的访问和路由一般由API网关来负责,API网关根据相应的路由规则,找到相应的服务实例进行访问。在伸缩管理方面,监控函数当前的请求和资源。如果资源过多,则进行相应的资源回收;若资源不够,则增加相应的资源实例。

在Serverless中,函数实例按需创建运行,按需伸缩调整,函数实例必须特别轻量,能够快速启动,快速关停,Serverless也需要提供完善的机制,支持函数实例的快速启动。当前Serverless在快速启动方面还没有很好的解决方案,快速启动的程度决定了Serverless的应用范围和应用场景,在很多场景下,如果没有快速启动的支撑,Serverless很难应用起来。

标签:serverless,Serverless,需要,架构,函数,到底,实例,大火,资源
From: https://blog.51cto.com/key3feng/5935024

相关文章

  • 用 Serverless 技术 1步搭建小卖部订单系统,赢好玩百变指尖陀螺!​​
    程序员如何用自己的技术开小卖店?使用消息队列MNS+函数计算FC轻松实现高弹性订单管理,应对抢购场景下的高并发情况!​完成场景搭建即可获得好玩百变陀螺,每天100个,10:00准时上......
  • 五年经验的前端社招被问:CPU 和 GPU 到底有啥区别?
    首先来看CPU和GPU的百科解释:CPU(CentralProcessingUnit,中央处理器):功能主要是解释计算机指令以及处理计算机软件中的数据GPU(GraphicsProcessingUnit,图形处理器;......
  • 只需30秒,国产AI文字生成视频神器到底有多绝?
    越来越多的人加入到短视频制作的队伍中来,短视频制作的优势在于:有各大平台大力的扶持;短视频在形式上更容易受用户接受;收益率更高,有效阅读的积累也更容易。下面教你如何把文......
  • 阿里P9李运华:架构到底是指什么?
    你好,我是李运华。2018年,我发布了《从0开始学架构》这门课程,分享了我之前在电信业务和移动互联网业务方面的经验和感悟。后来,我转岗去了蚂蚁国际,从事更加复杂的支付业务......
  • 架构到底是指什么?
    你好,我是李运华。 2018年,我发布了《从0开始学架构》这门课程,分享了我之前在电信业务和移动互联网业务方面的经验和感悟。 后来,我转岗去了蚂蚁国际,从事更加复杂的......
  • MySQL锁,锁的到底是什么?
    作者:蝉沐风博客站点:​​www.chanmufeng.com​​公众号:蝉沐风的码场MySQL锁系列文章已经鸽了挺久了,最近赶紧挤了挤时间,和大家聊一聊MySQL的锁。只要学计算机,「​​锁​​」永......
  • 女生学IT到底应该考虑什么?
    首先应该是兴趣。做任何事情都一样,有了兴趣,才有坚持下去的动力,如果你每天做着一件提不起兴趣、索之无味的事情,那么厌倦也是迟早的事。技术类的工作更是如此,需要踏实、......
  • 中国民营企业到底有多惨
    我是卢松松,点点上面的头像,欢迎关注我哦!都说民营企业难,可很多人不清楚难到什么程度,翟山鹰讲了一段话:截止到10月31号,中国还有4,700万家民营企业,这些企业每个月平均利润4178块......
  • 双线性到底是个什么玩意
    最近被双线性搞迷糊了,看pytorch源码和数学感觉有点迷糊,所以在这里记录一下探究的结果。目录Pytorch源码实验输入为二维输入为三维输入为四维Pytorch源码classBilinear(......
  • S/4HANA(本地部署或云版)跟 SAP 家族系统以及非SAP系统的集成,到底什么是推荐的方式?
    笔者的知识星球,有朋友提问:S4HANA(本地部署或云版)跟SAP家族系统以及非SAP系统的集成,sap的标准/推荐做法是通过BTP还是直接连接,或者是根据目标系统分别选择?有参考链接最好了......