Serverless今年会火吗?用的人多不多
发布于 4 年前 作者 phonegap100 45481 次浏览 最后一次编辑是 1 年前 来自 分享

一、Serverless相关的概念

Serverless又名无服务器,所谓无服务器并非是说不需要依赖和依靠服务器等资源,而是开发者再也不用过多考虑服务器的问题,可以更专注在产品代码上。

Serverless相关视频教程https://www.bilibili.com/video/BV12h411Q7wz?p=2

Serverless是一种软件系统架构的思想和方法,它不是软件框架、类库或者工具。它与传统架构的不同之处在于,完全由第三方管理,由事件触发,存在于无状态(Stateless)、暂存(可能只存在于一次调用的过程中)计算容器内。构建无服务器应用程序意味着开发者可以专注在产品代码上,而无须管理和操作云端或本地的服务器或运行时(运行时通俗的讲就是运行环境,比如nodejs环境,java环境,php环境)。Serverless真正做到了部署应用无需涉及基础设施的建设,自动构建、部署和启动服务。

通俗的讲: Serverless 是构建和运行软件时不需要关心服务器的一种架构思想。老程序员都用过虚拟主机,刚开始学Serverless 你可以把它理解为虚拟主机的升级版本。 图片1.png

虚拟主机已经是快被淘汰掉的上一代产物了。云计算涌现出很多改变传统IT架构和运维方式的新技术,比如虚拟机、容器、微服务,无论这些技术应用在哪些场景,降低成本、提升效率是云服务永恒的主题。Serverless的出现真正的解决了降低成本、提升效率的问题。它真正做到了弹性伸缩、高并发、按需收费、备份容灾、日志监控等。

二、传统模式和ServerLess模式下项目开发上线流程

传统模式

图片2.png

Serverless模式

图片3.png

Serverless 正在改变未来软件开发的模式和流程 图片4.png

三、Serverless 和ServerFul架构的区别

1、传统的ServerFul 架构模式 ServerFul 架构就是 n 台 Server 通过 网络通信 的 方式 协作在一起,也可以说 ServerFul 架构是基于 Server和 网络通信(分布式计算) 的 软件实现架构 , Server 可以是 虚拟机 物理机 ,以及基于硬件实现的云的云服务器。 图片5.png

2、Serverless 架构模式

Serverless 的核心特点就是实现自动弹性伸缩和按量付费。 图片6.png

相比ServerLes相比ServerFul 有下面一些特点:

资源分配: 在 Serverless 架构中,你不用关心应用运行的资源(比如服务配置、磁盘大小)只提供一份代码就行。

计费方式: 在 Serverless 架构中,计费方式按实际使用量计费(比如函数调用次数、运行时长),不按传统的执行代码所需的资源计费(比如固定 CPU)。计费粒度也精确到了毫秒级,而不是传统的小时级别。个别云厂商推出了每个月的免费额度,比如腾讯云提供了每个月40万GBs的资源使用额度和100万次调用次数的免费额度。中小企业的网站访问量不是特别大的话完全可以免费使用。

弹性伸缩: Serverless 架构的弹性伸缩更自动化、更精确,可以快速根据业务并发扩容更多的实例,甚至允许缩容到零实例状态来实现零费用,对用户来说是完全无感知的。而传统架构对服务器(虚拟机)进行扩容,虚拟机的启动速度也比较慢,需要几分钟甚至更久。

Serverless相关视频教程:https://www.bilibili.com/video/BV12h411Q7wz?p=2

50 回复

serverless会使开发更简单吗?需要架构师吗?

@yuedun 开发差不多的,相当于省去运维工作

@phonegap100 技术一般会与利益绑定,推一项技术必然会砸一部分人的饭碗,比如现在主流是微服务,使用serverless会不会使微服务无用武之地,那么当前使用微服务的人就会排斥

@yuedun 您说的非常正确,不过所有新技术的出现都会经历这个阶段的

Serverless 已经应用挺广泛的了

@haijianyang 是的 很多公司在用了 serverless 和nodejs是绝配

@haijianyang serverless的应用场景是什么 哪些公司在用 知道么 老哥

如果说节省运维成本的话,使用下来的感觉没有Heroku这种pass好用,而且Heroku集成了很多的插件(免费/付费). 费用上7美金一个月 500m内存的基础款,相信足够一些初创项目去使用了.而且方便管理. 还有就是版本管理的问题.functions多了也是个问题. 第一次访问的时候创建实例,也就是第一次访问的时候时间较久,感觉其实挺蛋疼的. 感觉需要找到适合的应用场景

@a1292717155 是的 ,第一次访问的时候比较慢,不过腾讯云的实例30分钟不访问才会销毁 ,所以如果项目访问量比较大的话 一直是热启动。

@phonegap100 个人认为serverless有他的优势也有局限性,可以去学习,但是在实际中慎用.

@a1292717155 好吧 ,但是很多大公司在用哦,第一次访问的时候比较慢的解决方法就是在serverless上面创建一个定时器网关,每隔几分钟访问一下,这样的话一直不会销毁的。使用serverless的公司 ,下图来源于腾讯云

1.png

@youmenglinzi 事件(通知服务等)流量激发(市场活动等)等场景。很多公司都在用(比如 QQ、微信读书、阿里),只是没有大规模,目前还有一定的局限性。

我不知道大家用过没,我是用过了。开发起来没那么好用,分开太散了,工具不太好用。可预见的未来的一种开发方式了。

@phonegap100 适合公司和项目的才是最好的,没必要跟风大公司.

@liangtongzhuo 之前的一个项目在用.开发体验确实不太行.

@liangtongzhuo 用serverless framework 以前如何开发 现在还是如何开发

还没有使用过,hr@test.dibiantech.com

@liangtongzhuo serverless framework 结合nodejs,开发起来很爽的

不仅仅是运维层面的简化,开发方式也会发生变化

serverless framework 结合nodejs 开发方式和以前是一样的

什么时候能流行不穿内裤了,serverless什么时候就能火

aws 的 serverless 已经很多用户使用了,可以看看这个讨论:函数式编程到底能做什么

相比自建集群,如果没有平台补贴(免费额度),其实 Serverless 的服务器成本会略高一丢丢。 但是省下了运维人员的人力成本,总体来讲对于非大 DAU 的绝大多数应用是十分划算。

@nomagick 目前已经很多公司加入serverless了 ,未来的趋势。程序并发量比较大的话还是非常省钱的。

serverless 基本可以免费使用,但是发现云数据库很贵哦

@wuwangju0 可以使用其他运营商的数据库 比如西部数码很便宜

对 Serverless SSR 挺感兴趣的,不过目前具体发展不好说。目前还是有像冷启动之类的劣势的

@DefectingCat 腾讯云Serverless 官方好有 SSR 的。冷启动比较慢 10秒左右 热启动很快的

@phonegap100 没有用过 安全吗

@phonegap100 这样用违背了 serverless 的设计

实际用过阿里云的 Serverless,或者叫 FC 更贴切一点?项目也在运用也有一定的量。 Serverless 其实相比物理机。他是一个不错的解决方案。 小公司没有能力做 k8s,没有能力做 devOps,并发真起来才去加服务器的配置,甚至还要走财务流程。 以上所说的,你用 Serverless 都不用考虑这些。

缺点是什么? 销售口号的大概意思是:开发只要关注你的函数实现,不用关注其他东西? 这个意思不完全正确。实际上 fc 在本地开发 debug 与线上环境不一致,debug 也困难。 容器化有很多好处,但是目前这块不知道是不成熟还是不够给力去推,可能是因为不是盈利的大头,推进速度有限吧。 示例很少,文档也不全,基本一步一个脚印。而且容器比较盲盒,本地一个容器,线上环境又是一个容器。 容器虽然说能进去,但意义不大。比如说,你无法知道内网的带宽是多少,你无法知道容器的 I/O 是什么速度。 很多物理机上很显而易见的东西,在物理机里面都相对困难体现。当然,也有可能故意这样设计,以上这些只是阿里 FC 的使用感受。

为什么用阿里的?因为调研的时候发现腾讯好像连本地跑都有点困难。。谁喜欢在浏览器写代码呢?

@cn-coderl 所以小公司用herkou这种pass不是更香么?并不觉得serverless这种东西适合小公司其实.

@cn-coderl 您可能没有深入了解 可以本地调试的哦

云中的serverless定价仅针对您使用的内容收费。 比使用服务器便宜。 不仅今年而且从现在开始会很hot

@sakura90 有你这个话我就放心了

@wuwangju0 小项目使用serverless 基本可以免费使用

@wuwangju0 你们公司打算用serverless开发什么项目

@phonegap100 智能硬件接口项目

@wuwangju0 稳定性怎么样呢

@phonegap100 现在应该优化了 腾讯云Serverless 比阿里的好一些

肯定是腾讯的好点了 腾讯云, 服务器 2核4g8m,198元/3年 传送门:https://curl.qcloud.com/sR6KJoH0 ps:老用户,重新注册qq就可以白嫖了

@youmenglinzi 腾讯云更完善一些 阿里也不错

利益相关,可以关注下 https://serverless-devs.com/ 这个serverless工具,是一款serverless应用全生命周期管理的工具集。从应用构建&部署,本地开发调试,线上灰度发布以及线上可观测等提供了全面的解决方案。 image.png

关于 @cn-coderl 聊到的痛点,开发联调等,通过Serverlesss-Devs工具提供,本地调试,远程调试,以及线上VPC内资源调试(端云联调)等全方面的解决方案。 同时 也提了实例登录instance能力,只要拉起的容器没有销毁,可以通过命令登录到这个容器中查看应用的执行状态,让serverless不再黑盒

@youmenglinzi 场景很多哈,对前端最典型的场景就是BFF,以及web服务。但是serverless在更多事件触发的场景下有更为广泛的应用。

  • 比如传统的大数据场景中ETL部分会使用比较复杂的架构如flink等。通过一个小巧的serverless函数可以轻松解决上面的问题,无需引入复杂架构。
  • 还有在音视频转码:典型的比如视频网站慕课网。他需要提供 1080,720,480等不同的清晰度的视频。这时候用户上传的原始的视频通过函数计算服务,处理成不同的格式。而且最重要的是他是事件触发,按需收费的
回到顶部