简单概述Serverless

天翼云开发者社区
• 阅读 365

本文分享自天翼云开发者社区@ 《​ ​简单概述Serverless​​》,作者: 我是小朋友

Serverless是计算的趋势,它使诸如Web应用程序之类的代码执行与维护服务器以运行该代码的需求脱钩。 创建,供应和维护服务器上运行的应用程序的操作开销(传统意义上)非常重要。 减少或消除这项工作可以帮助组织管理成本并为员工腾出时间。 Serverless还提供了创新的计费模型和更容易的可扩展性。

在《Serverless是什么?》中,作者Mike Roberts和John Chapin指出了使Serverless变得独一无二的核心见解: 使用完全Serverless的应用程序,您不再需要将架构的任何部分视为在主机上运行的资源。 您的所有逻辑(无论您是自己编写代码还是与第三方服务集成)都在完全弹性的操作环境中运行。 您的状态也以类似的弹性形式存储。 Serverless并不意味着服务器已经消失。 这意味着您不再需要担心它们。

Serverless可以归纳为: 1.是一种无服务器架构 2.是Baas(后端即服务)和Faas(函数即服务)的综合体 3.基于事件驱动的编程泛型 目前常见的业界产品有AWS Lambda、Google Cloud Functions、Azure Functions、IBM OpenWhisk、阿里云函数计算。随着容器技术,IoT,5G,区块链等技术的快速发展, 技术上对去中心化,轻量虚拟化,细粒度计算等技术需求愈发强烈,而Serverless必将借势迅速发展。

价值及影响 ·低成本:运营成本和开发成本 ·真正的按需付费 ·高横向扩展 ·只需要传统5%~15%的计算能力 ·NoOps

应用场景 事件驱动及响应式架构 IoT物联网场景中低频需求 请求对及时响应需求不强 固定时间触发计算资源利用低的的业务 流量突发场景 跨云和混合云 边缘计算 代码运行周期短,长的不适合

不同风格的Serverless Serverless技术有几种不同的版本。尽管AWS Lambda被视为启动这一运动的特定技术,但其他供应商提供了减少运营开销的平台。Serverless产品通常分为两种:

后端即服务(BaaS)-BaaS提供了Serverless方法来处理诸如存储,身份验证和用户管理之类的事情。

功能即服务(FaaS)-FaaS平台以离散的“功能”单元运行代码,并根据需要调用它们。

Serverless的API 最终用户可以使用API网关之类的云基础架构来构建可根据需要调用的整个服务,而不必不断监听。云提供商会将传入的请求路由到正确的Serverless功能,该功能将完成工作并将响应写回最终用户。

这样就可以开发仅在使用时才收费的API,并且可以通过最小的更改大规模扩展。 Slobodan Stojanovic和Aleksandar Simovic的书《使用Node.js的Serverless应用程序》提供了一个示例,说明了为什么要对API使用Serverless: 要了解Serverless,请考虑一下洗衣机。洗衣服的设备听起来像是一个疯狂的起点,但是如今拥有一台服务器类似于拥有一台洗衣机。每个人都需要干净的衣服,最合乎逻辑的解决方案似乎是购买洗衣机。但是大多数时候,洗衣机都插上电源,什么也不做。最多每周使用5到15个小时。服务器也是如此。大多数情况下,您的普通应用服务器只是在等待接收请求,什么也不做。

Serverless存储 传统上,管理Web应用程序的数据存储一直是操作应用程序中最困难的部分之一,而数据库管理有时看起来像是一门绝技。但是,Serverless数据存储(如Firebase和Aurora)的引入使开发人员不必担心优化实例类型,执行备份以及其他可操作的数据库问题。 相反,云提供商将为最终用户处理托管数据存储的事宜。提供者经常具有按需付费的计费模型。默认情况下,数据存储速度很快,并且通常具有吸引开发人员的灵活性,例如缺少预定义的架构。

Serverless云事件 在云环境中,应用程序在诸如Amazon Web Services之类的平台中诞生并终生存在。这与更“传统”的应用程序形成对比,这些应用程序可能旨在在自营数据中心的通用商品硬件上运行。由于基于云的应用程序在更高的抽象级别上运行,因此它们也可以与“事件”一起使用,这些事件可以通知最终用户抽象化基础架构中正在发生的事情,从而避免了从较低层次的文件系统中找出问题的负担。蜜蜂。当工程师需要对云平台上发生的事件做出反应时,Serverless才真正发挥作用。作为提高云事件效率的一个示例,开发人员可能希望在将新文件推送到S3存储桶时执行某些操作,例如修改其尺寸并将新文件发布到其他地方。

通过将云提供商的本机抽象用于这些事件,可以大大减轻开发和部署负担。这允许具有创造性的新架构,这些架构可以很好地扩展,甚至可以编织到大数据转换管道中。可以在Peter Sbarski的AWS上的Serverless架构中找到使用S3事件的示例。

其他Serverless用例 Symphonia的联合创始人Mike Roberts在接受采访时说,Serverless还具有其他用例。例如,可以被建模为一组异步“实时”(即比人类感知的速度更快)事件的任何系统都可以受益于使用Serverless快速响应所有这些事件。对于请求模式不一致的用例,例如webhooks,这可能会派上用场。 Webhook可能不会经常触发,但是当它发生时,让Serverless功能执行工作而不是服务器上的进程来全天候保留计算能力可能会为企业带来巨大的成本和运营节省。

公司喜欢尝试Serverless的一个领域是操作和与呼叫相关的自动化。警报,自动缩放,响应用户消息的聊天机器人,以及所有这些都适合于非对称调用的工作环境,这些工作很有用,但由于并不直接面向最终用户,因此可以进行试验。一旦证明这些系统成功,公司可能会更愿意推出面向用户的服务

何时使用Serverless Serverless必须提供的最大好处之一是它能够减少将某些产品推向市场所需的时间。 不必过多担心订购和配置服务器,可以使工程师解放精力,专注于其他任务,例如快速交付软件。 同样,随着Serverless产品继续在堆栈中向上移动,使Web应用程序更易于组合在一起,可以大大减少人工成本,因为需要编写和维护的代码更少。

减少劳力不仅可以直接带来金钱上的收益,还可以带来更快乐,更有生产力的开发商。 当开发人员知道从构思到生产的想法可能会遇到更少的绊脚石和操作负担时,可能会交付更多的软件,并且更有可能生产出更好的产品。

Serverless的障碍 Serverless是一种相对较新的技术,最佳实践仍在完善中。因此,Serverless非常适合那些有前瞻性思维的人,他们不介意袖手旁观,并且对歧义和风险感到满意。

Serverless新手应该注意的一个特定领域是其不可预测的使用模型。使用AWS EC2之类的传统设置的账单费用更具可预测性,因为该费用基于提前知道的大多数事情,例如实例类型,运行多少小时以及带宽使用情况。另一方面,Serverless对水平可伸缩性有很高的限制,这使得扩展更容易,但也使计费费用的积累变得更加容易。同样,调用Serverless功能可能很便宜,将其输出写入日志实用程序的成本最终可能会比预期更快地产生高成本。例如,随着AWS Lambdas向其写入日志,AWS CloudWatch日志记录成本将迅速增加。如果第三方监视工具(例如Datadog)也从CloudWatch摄取此数据,则可能会产生进一步的费用。

最后,了解Serverless供应商的实际承诺可能很模糊。对于传统服务器,事先就可以很好地了解有关分配给计算机的可用性和资源的协议,并在合同中进行了详细说明。在Serverless的情况下,冷启动时间,错误的函数调用以及其他“陷阱”可能潜伏在角落。这些最终可能会破坏您的预期用例。例如,迈克·罗伯茨(Mike Roberts)表示,要求亚毫秒级响应时间的应用程序仍然不是当今大多数Serverless产品的理想选择。像任何新的范例一样,明确的期望和解决缺陷的方法可能会随着时间而逐渐成熟,但是目前,Serverless用户只能自己进行试验。

原文链接:https://blog.csdn.net/AndroidYingZi/article/details/120926519

点赞
收藏
评论区
推荐文章
常用内核架构
本文分享自天翼云开发者社区《》,作者:JackW宏内核应用程序调用内存分配的API(应用程序接口)函数。处理器切换到特权模式,开始运行内核代码。内核里的内存管理代码按照特定的算法,分配一块内存。把分配的内存块的首地址,返回给内存分配的API函数。内存分配的
Stella981 Stella981
3年前
Bazaar:阿里云Serverless计算服务探秘
_摘要:_ Serverless指用户无需管理服务器情况下构建和运行应用程序的一种方式。可见Serverless并不是真的不需要服务器,毕竟程序代码不能靠意念来执行,仍然是需要硬件服务器实体来作为运行代码的基础的。Bazaar:阿里云Serverless计算服务探秘 作者:Bazaar项目组1.    什么是Serverless
Knative Autoscaler 自定义弹性伸缩
本文分享自天翼云开发者社区@《》,作者:我是小朋友背景如今各大云厂商都开始提供ServerlessKubernetes服务,简化集群管理,降低运维管理负担,让Kubernetes更加简单。那么问题来了,一个系统到底需要具备怎样的能力才能更好地支撑Serve
PostgreSQL:内存结构
本文分享自天翼云开发者社区@《》,作者:我是小朋友在Postgresql中,内存大概被分为两块Localmemoryarea:为每一个backendprocess分配的内存Sharedmemoryarea:PostgreSQLserver所有的backgr
serverless与容器优缺点
本文分享自天翼云开发者社区@《》,作者:我是小朋友容器优势1、可移植性:使用容器,开发人员可以确保他们的应用程序可以在任何云平台或本地服务器上运行。2、轻量化:容器镜像以层叠加,在本地拥有镜像层缓存;计算资源使用方面,容器也比虚拟机更高效。3、快速启动:容
使用element-ui 的上传组件upload完成自定义上传到天翼云oss云服务器
本文分享自天翼云开发者社区@《》,作者:我是小朋友首先配置天翼云,如下操作1、要求在使用OOS之前,首先需要在www.ctyun.cn注册一个账号(Account)。创建AccessKeyId和AccessSecretKey。AccessKeyId和Acc
无服务器Serverless总结
本文分享自天翼云开发者社区@《》,作者:我是小朋友背景随着AWSLambda的诞生,无服务器与FaaS一起出现在舞台中,Serverless也开始进入人们的视野。全球各大云服务厂商都纷纷推出各自的Serverless平台。先了解下什么是云计算云计算是通过I
云计算之-弹性伸缩
本文分享自天翼云开发者社区@《》,作者:AE86上山了弹性伸缩弹性伸缩为用户提供高效管理计算资源的策略。用户可设定时间周期性地执行管理策略或创建实时监控策略,来管理VM实例数量,并完成对实例的环境部署,保证业务平稳顺利运行。在需求高峰时,弹性伸缩自动增加V
通通透透看无服务器计算:由来、场景和问题
本文分享自天翼云开发者社区@《》,作者:我是小朋友一、无服务器(Serverless)计算是什么云计算涌现出很多改变传统IT架构和运维方式的新技术,比如虚拟机、容器、微服务,无论这些技术应用在哪些场景,降低成本、提升效率是云服务永恒的主题。过去十年来,我们
如何将物理机Windows系统迁移到VMware虚拟机?
本文分享自天翼云开发者社区@《》,作者:我是小朋友如何将物理机上的Windows系统迁移到VMware虚拟机?本文详细介绍如何使用DiskGenius免费版将物理电脑上的Windows操作系统转移至VMware虚拟机。关于迁移物理系统到VMware虚拟机V
天翼云开发者社区
天翼云开发者社区
Lv1
天翼云是中国电信倾力打造的云服务品牌,致力于成为领先的云计算服务提供商。提供云主机、CDN、云电脑、大数据及AI等全线产品和场景化解决方案。
文章
722
粉丝
15
获赞
40