Serverless是什么

Serverless的中文含义是无服务器,是一种云原生开发模式,可使开发人员专注构建和运行应用,而无需关注和管理服务器等底层基础设施及其运维。事实上,Serverless并不是真的不需要服务器,而是把服务器从应用开发中抽离出来了,转由云厂商接管相应的置备、维护和扩展等工作。

我们知道,计算模式中有自建基础设施、IaaS和PaaS,这些是基于服务器运行应用程序的Serverful模式。Serverless与这些计算模型的区别在于,Serverless无需关注与业务逻辑无关的部分,从繁重的底层资源的管理运维中解放了开发人员的精力,将业务逻辑无关的部分工作交给云厂商去管理,包括基础架构和应用扩展、管理运维等工作。

几种不同的开发模式比较

在Serverful模式中,用户需要预先购买资源,根据业务负载的波动动态调整资源的规模,在业务空闲时段仍要保留一定的运行资源,以保证负载增长时可以扩容,存在一定程度的资源浪费。此外,还要管理操作系统、安全补丁、负载平衡、容量规划、资源扩展、日志和监控等工作。与之相反,Serverless模式下的Serverless平台会自动分配和销毁资源,在某些时候可以将资源缩减到零,而不再产生任何费用,将代码开发之外的工作都转移给云厂商,释放了开发人员的生产力。

那么,Serverless架构是如何构成的呢?按照 CNCF(云原生基金会) 对 Serverless 计算的定义,Serverless 架构由 FaaS(函数即服务)和 BaaS(后端服务)结合而成,如下图。

我们使用各种计算模式,就是为了实现特定业务目的。举一个日常出行的例子,我们的出行目标是从A地到B地,然而为了实现这个目标,往往有几种不同的出行交通方式:

  • 我们购买物理服务器,就好比我们自己买了一辆车直接开过去,显然,这种方式投入大、还需要持续进行车辆维护。
  • 我们也可以使用虚拟机,这就好比租一辆车,自己开过去,这种方式下租用期间的维护也很头疼。
  • 当然,我们也可以使用Serverless,就好比直接打车过去,这是最简单愉快的方式了,只需告诉出租车师傅去哪里,到了目的地,按实际费用支付即可。
  • 另外,我们还可以使用SaaS,就像是通过公共交通,只是SaaS都是通用场景的实现,不会根据我们目标做调整,所以难免会遇到各种换车,不可避免的要走很多路花很多时间。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/468796.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

lv15 平台总线驱动开发——ID匹配 3

一、ID匹配之框架代码 id匹配(可想象成八字匹配):一个驱动可以对应多个设备 ------优先级次低(上一章名称匹配只能1对1) 注意事项: device模块中,id的name成员必须与struct platform_device中…

Java加密秘钥

1. Java加密秘钥 您可加密信息,使其避免未经授权的访问。您可通过Java密码技术对数据进行编码来加密。密码技术包含各种用于对网络上发送的数据进行编码和译码的加密秘钥。Java密码架构(JCA)和Java密码扩展(JCE)可让您在Java平台上执行密码。 Java加密秘钥是一连串控制数…

Hive调优——合并小文件

目录 一、小文件产生的原因 二、小文件的危害 三、小文件的解决方案 3.1 小文件的预防 3.1.1 减少Map数量 3.1.2 减少Reduce的数量 3.2 已存在的小文件合并 3.2.1 方式一:insert overwrite (推荐) 3.2.2 方式二:concatenate 3.2.3 方式三&#xff…

【大数据Hive】hive 表设计常用优化策略

目录 一、前言 二、hive 普通表查询原理 2.1 操作演示说明 2.1.1 创建一张表,并加载数据 2.1.2 统计3月24号的登录人数 2.1.3 查询原理过程总结 2.2 普通表结构带来的问题 三、hive分区表设计 3.1 区表结构 - 分区设计思想 3.2 操作演示 3.2.1 创建分区表…

x86汇编通用寄存器用途一览

文章目录 写在前面通用寄存器参考资料 写在前面 intel官方文档链接:Intel64和IA-32架构软件开发者手册 具体在Combined Volume Set of Intel 64 and IA-32 Architectures Software Developer’s Manuals这本手册 (五千页我的天。。。) 不想…

【C++初阶:类和对象(下篇)】初始化列表 | static成员 | 友元

目录 一、构造函数构造函数体赋值🐾初始化列表🐾💦 explicit关键字 二、static成员🐾概念**💦 关于静态的特性** 三、友元💦 **友元函数**💦 **友元类** **四、内部类** 一、构造函数 构造函数…

【教学类-47-01】20240206UIBOT+IDM下载儿童古诗+修改文件名

背景需求: 去年12月,我去了其他幼儿园参观,这是一个传统文化德育教育特色的学校,在“古典集市”展示活动中,小班中班大班孩子共同现场念诵《元日》《静夜思》包含了演唱版本和儿歌念诵版本。 我马上也要当班主任了&a…

在微信视频号上发表视频

我们手机打开微信 然后 最下面选择 发现 然后点击 上面的视频号 进入后 点击 右上角头像图标 然后 进入个人管理界面 左下角选择 发表视频 然后 进入一个录制界面 我们左下角 点击这个 从相册选择 打开相册后 选择自己需要的视频 然后 点击右下角下一步 觉得内容没问题 就…

进阶C语言-动态内存管理

动态内存管理 🎈1.为什么存在动态内存分配🎈2.动态内存函数的介绍🔭2.1malloc和free函数🔭2.2calloc函数🔭2.3realloc函数 🎈3.常见的动态内存错误🔭3.1对NULL指针的解引用操作🔭3.2…

车载软件架构 —— Adaptive AUTOSAR软件架构

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师(Wechat:gongkenan2013)。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 本就是小人物,输了就是输了&#…

安卓价值1-如何在电脑上运行ADB

ADB(Android Debug Bridge)是Android平台的调试工具,它是一个命令行工具,用于与连接到计算机的Android设备进行通信和控制。ADB提供了一系列命令,允许开发人员执行各种操作,包括但不限于: 1. 安…

C++中的析构函数

一、析构函数概念 析构函数不是完成对象的销毁,对象的销毁是由编译器完成的。析构函数完成的是对象中资源的清理工作。通常是对对象中动态开辟的空间进行清理。 二、析构函数特性 1.析构函数的函数名是 ~类名 2.析构函数无参数无返回值 3.一个类中只能有一个析…