专栏首页跨平台全栈俱乐部使用Serverless模式开发部署前端和Node.js

使用Serverless模式开发部署前端和Node.js

写在开头:

什么是Server模式?前端、后端现在都可以使用Serverless模式进行开发和部署吗?

先回答第一个问题:

Serverless 圈内俗称为“无服务器架构”,Serverless 不是具体的一个编程框架、类库或者工具。简单来说,Serverless 是一种软件系统架构思想和方法,它的核心思想是用户无须关注支撑应用服务运行的底层主机。这种架构的思想和方法将对未来软件应用的设计、开发和运营产生深远的影响。

所谓“无服务器”,并不是说基于 Serverless 架构的软件应用不需要服务器就可以运行,其指的是用户无须关心软件应用运行涉及的底层服务器的状态、资源(比如 CPU、内存、磁盘及网络)及数量。软件应用正常运行所需要的计算资源由底层的云计算平台动态提供。


说人话,什么意思?

后端Serverless模式:

就是你直接在网页上编辑好你的逻辑,点一下部署,你就可以发布新的代码到服务器上面了,不需要你去关心运维部署层面的东西了,只要你考虑开发逻辑即可。

例如,向下面这样(基于构建物联网LOT应用工具开发的,类Serverless模式)


前端Serverless模式:

一样的,你在网站点编辑好你的逻辑,点下构建发布,就发布成功了,无论是IOS、安卓、小程序、H5

例如下面这样,在网页中将组件拖入页面,点击上架,那么就上架成功了


通过上面的内容,你应该能知道Serverless模式的大概使用了,可是,怎么把一个很复杂的功能点实现呢?那么你要深入理解下Serverless的模式含义

Serverless = Faas + Baas

Faas:函数即服务

Baas: 后端即服务

为什么说Serverless模式,是等于Faas + Baas呢。

首先,函数是我们自己定义的逻辑,但是函数并不能帮我们做到所有想做的事情,例如,我们要有一个redis服务,这个服务是进程外缓存,是独占一个端口存在的,而Serverless就是为了帮我们屏蔽运维和部署的问题,那么就需要函数编写你的一个一个业务逻辑,然后平台帮我们集成一些特殊的功能,例如redis,mysql等。

Serverless中,很重要的一个点就是函数

例如一个接口调用

你可能需

解析参数、

参数处理、

更新db=》通知db、

更新缓存=》通知redis

等等..

以上的这几个步骤,完成了接口调用

你可以很直观的想象,每个节点都是一个函数,处理完成后,将下个函数所需要的值传递过去,调用下一个函数(节点),这样过程非常清晰、逻辑独立,复用也更为简单。

所以Serverless的核心,就是讲究颗粒度,函数拆分到极致的细致

Faas函数的生命周期:

需要注意的点:

采用函数计算的 Serverless 与云服务器最大的不同之处在于:云服务器需要一直运行,而函数计算是按需计算。按需计算就意味着,在请求到来的时候,才运行函数。没有请求的时候,是不算钱的。

像redis、mysql这些,就属于Baas部分,就是:后端即服务,这些都是可以向云厂商申请资源的

通用的Sereverless架构:

使用Serverless开发的⚠️点和优缺点:

  • 一定要编写单元测试
  • Serverless对一些希望掌控底层计算资源的场景来说不是很合适
  • Serverless并不是必要的,合适的场合确实能提效不少,目前我已经在生产环境上前后端都在用这种模式开发
  • 快速上线是Serverless模式最大的优点,一键发布
  • 减少运营成本
  • 可移植性的问题,Baas服务,每个厂商实现标准不一致
  • 更适用于微服务
  • 会大量依赖于第三方服务,例如Baas部分
  • 调试和开发不是特别方便
  • 自动扩展能力非常好

以上就是我在使用Serverless模式进行前后端开发的一些总结,觉得有帮助让你理解到什么是Serverless模式的话,可以点个关注和再看支持下

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 解析:今日淘宝S1级别故障

    今天在很多头条里出现了这张图,小编自己也是百分比必现,IOS版本,而且是现在还会百分百出现,目前3月25日7.52分已经修改了提示语(发现新版本xxxx)

    Peter谭金杰
  • 微前端框架是怎么导入加载子应用的 【3000字精读】

    微前端似乎是最近一个很火的话题,我们也即将使用在生产环境中,接下来会更新一系列微前端源码分析、手写微前端文章

    Peter谭金杰
  • Node.js源码中,为什么会首选binding ipv6 ? 【精简小知识】

    1.地址空间不同,IPv4中规定IP地址长度为32,而IPv6中IP地址的长度为128

    Peter谭金杰
  • TLC 大会专访王俊杰老师,与 Serverless 技术专家聊聊云原生

    “王俊杰,腾讯云 Serverless 技术布道师,十余年互联网研发经验。负责 Tencent Serverless 技术在全栈应用开发的方案设计工作。主要研...

    腾讯云serverless团队
  • 为什么说每个开发者都应该关注Serverless?

    如果说云计算是过去、现在和未来,那么Serverless就是云计算的未来。Gartner报告中表明,2020年全球将有20%的企业部署Serverless。Se...

    TVP官方团队
  • 为什么说每个开发者都应该关注Serverless?

    如果说云计算是过去、现在和未来,那么Serverless就是云计算的未来Gartner报告中表明,2020年全球将有20%的企业部署Serverless。Se...

    腾讯云serverless团队
  • 基于 Vuejs+Express 快速构建Serverless应用 | 在线 Workshop

    在社区,我们经常会收到关于 Serverless 的“灵魂”三问。? Serverless 是什么? Serverless 能做什么? Serverless ...

    腾讯云serverless团队
  • Serverless 一站式云原生应用开发实践

    在国内搜索引擎搜索“Serverless” 会有许多五花八门的答案,有些人认为 Serverless 是前端的 3.0 时代,会给前端开发者带来很好的收益改变。...

    腾小云
  • 应对突发需求,如何借助Serverless快速上云?

    感谢云加社区组织这次“技术应变力”的线上专题活动,并邀请我来进行分享,我将从Serverless的角度来进行解读。Serverless是最近非常热门的词,中文翻...

    腾小云
  • 应对突发需求,如何借助Serverless快速上云?

    导读 | 当突发事件来临时,当绝佳idea闪现时,如何快速搞定开发和部署,使之变身为产品?快,则应万变!Serverless 是当今炙手可热的技术,被认为是云...

    腾讯云serverless团队

扫码关注云+社区

领取腾讯云代金券