0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是Serverless

汽车电子技术 来源:码农与软件时代 作者: 码农与软件时代 2023-02-20 15:58 次阅读

**

一、Serverless是什么?**

Serverless译为“无服务器”,是指应用程序的编码人员和运维人员无需关注“服务器”的信息,仅关注业务所涉及的代码逻辑即可。而“服务器”相关工作由第三方(AWS、阿里云)来完成。

我们知道,如果要从0开始上线一个业务APP,大致需要做以下工作:

(1)购买服务器;

(2)安装操作系统

(3)搭建开发环境;

(4)构建与部署APP;

(5)构建高可用与弹性的运行环境(如负载均衡和自动伸缩);

(6)建立APP运行的可观测性(日志分析与可视监控)。

无服务器架构的用户则只需负责(4)和(6);而其它项则由第三方来完成。

从应用架构的角度来看, 高冷的云原生,原来可以这样理解 一文讲解到了单体架构、微服务等。如果进一步将微服务进行划分,可形成“函数粒度”的服务,这些服务由事件驱动并由完全由第三方管理,称为函数计算或者FAAS(Function as a Service)。开发人员只需要编写函数就可以了,无需关注(第三方来完成)计算资源的高可用性、弹性等工作。

正如CNCF(Cloud Native Computing Foundation)对Serverless架构的定义:

Serverless是指构建和运行不需要服务器管理的应用程序概念。它描述了一种更细粒度的部署模型,其中将应用程序打包为一个或多个功能,上传到平台,然后执行、扩展和计费,以响应当时确切的需求。

函数计算是事件驱动的无状态应用,需要事件源和管理状态。能够产生事件的源有很多:对象存储、数据库、日志服务、表格存储等等,这些服务通常由公有云(AWS、阿里云)配套提供,称为后端即服务BaaS(Backend as a Service)。

正如UC Berkeley在 Cloud Programming Simplified: A Berkeley View on Serverless Computing一文中提到的Serverless架构:Serverless = FaaS + BaaS。

从基础设施的角度来看,先后经过了物理服务器、虚拟机、容器,现在发展到了Serverless。相应地,计算资源调度的粒度越来越细,越来越有弹性。套用阿里云官网的函数计算应用场景--视频转码:

图片

二、为什么会出现Serverless?

人们总是追求效率、成本。

围绕着云计算,现在已经从云计算、云原生发展到Serverless,演进的背后原理已经在 高冷的云原生,原来可以这样理解 进行了探讨。

这里引用Ben kehoe的Serverless考量:

(1)我的业务是什么?

(2)做这件事情能不能让我的业务出类拔萃?

(3)如果不能,我为什么要做这件事情而不是让别人来解决这个问题?

(4)在解决业务问题之前没有必要解决技术问题。

三、Serverless架构是如何实践的?

Serverless的本质是让开发人员最大限度地去关注业务,进行业务创新,而不要把精力花费在底层运行环境所需要的高可用、弹性、安全等因素上。

Serverless最为直接的实践便是函数计算:

Amazon Lambda是一种事件驱动的计算引擎,” 用户无需预置或管理基础设施即可运行代码。只需编写代码并将其作为 .zip 文件或容器镜像上传即可。

阿里云有函数计算。

其基本流程为:

图片

开发者进行代码上传:以Java为例,上传的是jar包,同时会指定入口函数、当前版本、所需资源(内存)等信息。

当云产品事件源触发事件时,资源调度服务会依据函数计算的相关信息,进行申请函数实例。申请方式与VM、Docker类似,都是分布式集群里面,采用某种算法进行选择。

函数实例运行在VM中,同一个VM只运行同一用户的不同函数,以实现安全隔离。

除此之外,阿里云也进行了广泛的探索,其路线图为:

图片

SAE(Serverless App Engine,Serverless应用引擎)是面向应用的Serverless PaaS平台,实现了Serverless的理念:帮助PaaS层用户免运维IaaS、按需使用、按量计费,做到低门槛微服务应用上云。

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发
    +关注

    关注

    0

    文章

    364

    浏览量

    40786
  • 因素
    +关注

    关注

    0

    文章

    7

    浏览量

    14407
  • serverless
    +关注

    关注

    0

    文章

    65

    浏览量

    4490
收藏 人收藏

    评论

    相关推荐

    鸿蒙原生应用元服务实战-Serverless华为账户认证登录需尽快适配

    一、ArkTS\\\\API9,服务器端基于serverless开发的应用与元服务华为账号注册登录功能暂时是不支持的 二、3月1日后的审核要求 3月1日的时间是快到了。 三、会导致的结果
    发表于 02-20 10:14

    Bazaar:阿里云Serverless计算服务探秘

    摘要: Serverless 指用户无需管理服务器情况下构建和运行应用程序的一种方式。可见 Serverless 并不是真的不需要服务器,毕竟程序代码不能靠意念来执行,仍然是需要硬件服务器实体来作
    发表于 06-08 15:35

    Serverless适用何种场景?会带来哪些冲击?

    Serverless 实战 —— 与微服务一脉相承,Serverless适用何种场景?会带来哪些冲击?Serverless 架构用来描述那些显著或完全依赖于第三方应用或服务(“在云端”)的应用程序
    发表于 07-12 07:41

    Serverless概念

    Serverless简介概念Serverless的全称是Serverless computing无服务器运算,又被称为函数即服务(Function-as-a-Service,缩写为 FaaS),是云
    发表于 09-15 07:38

    HarmonyOS/OpenHarmony原生应用开发-华为Serverless云端服务支持说明(一)

    云端原生的实现,就现在来看,华为的Serverless应该是系统地考虑了这个问题。 而前端的实现,现在官方主推为“Stage模型+ArkTS+API9及以上”应用开发,我们认为通过以上方式实现
    发表于 10-08 10:22

    AWS的“炮仗”与Serverless

    Serverless Computing,即”无服务器计算”,这一概念在刚刚提出的时候并没有获得太多的关注,直到2014年AWS Lambda这一里程碑式的产品出现。
    的头像 发表于 07-10 09:40 2978次阅读
    AWS的“炮仗”与<b class='flag-5'>Serverless</b>

    实例详解对Serverless SQL大数据分析技术的应用

    近年来, Serverless作为一种新型的互联网架构直接或间接推动了云计算的发展,同时基于Serverless的轻量计算也成为了新的技术热点,而Serverless SQL大数据分析产品就在此背景下应运而生。
    的头像 发表于 07-26 10:54 4288次阅读
    实例详解对<b class='flag-5'>Serverless</b> SQL大数据分析技术的应用

    Serverless Devs Serverless开发者平台

    ./oschina_soft/Serverless-Devs.zip
    发表于 05-13 10:26 0次下载
    <b class='flag-5'>Serverless</b> Devs <b class='flag-5'>Serverless</b>开发者平台

    阿里云宣布核心产品全面 Serverless

    11月3日,2022·云栖大会上,阿里云智能总裁张建锋表示,以云为核心的新型计算体系正在形成,软件研发范式正在发生新的变革,Serverless是其中最重要的趋势之一,阿里云将坚定推进核心产品全面
    发表于 11-03 11:30 475次阅读
    阿里云宣布核心产品全面 <b class='flag-5'>Serverless</b> 化

    EMQX Cloud Serverless 正式上线

    EMQX Cloud Serverless 正式上线:3 秒部署、按量计费,MQTT Serverless 加速物联网应用开发变革 近日,全球领先的开源物联网数据基础设施软件供应商 EMQ 正式发布
    的头像 发表于 02-06 15:57 1004次阅读
    EMQX Cloud <b class='flag-5'>Serverless</b> 正式上线

    Serverless是什么?

    Serverless译为“无服务器”,是指应用程序的编码人员和运维人员无需关注“服务器”的信息,仅关注业务所涉及的代码逻辑即可。
    的头像 发表于 02-15 14:28 3481次阅读
    <b class='flag-5'>Serverless</b>是什么?

    Serverless Streaming:毫秒级流式大文件处理探秘

    旧浪 | 华为云 Serverless 研发专家 平山 | 华为云中间件 Serverless 负责人 1 背景 企业应用从微服务架构向 Serverless(无服务器)架构演进,开启了无服务器时代
    的头像 发表于 02-24 11:55 417次阅读

    Serverless Streaming:毫秒级流式大文件处理探秘

    背景 企业应用从微服务架构向 Serverless(无服务器)架构演进,开启了无服务器时代,面向无服务器计算领域的 Serverless 工作流也应运而生。许多 Serverless 应用程序不是由
    的头像 发表于 03-21 10:37 467次阅读
    <b class='flag-5'>Serverless</b> Streaming:毫秒级流式大文件处理探秘

    科技云报道:Serverless或许没有你想象中的安全

    Serverless安全性的最佳实践
    的头像 发表于 05-12 13:12 349次阅读

    华为云全域 Serverless 8 月更新盘点

    【摘要】 近年来,华为云持续构筑全域 Serverless 云服务,推出了一系列竞争力领先的 Serverless 产品,包括函数工作流 FunctionGraph、Serverless 容器引擎
    的头像 发表于 09-27 00:06 493次阅读
    华为云全域 <b class='flag-5'>Serverless</b> 8 月更新盘点