阿里云原生专家洛浩:详解Serverless的起源、发展和落地实践
写在前面:2021年7月2日,阿里云用户组(AUG)在济南召开。阿里云原生专家洛浩结合自身8年To B经验,现场跟数十家山东企业分享了业内领先的云原生技术Serverless。本文根据作者的现场演讲整理而成。
目前有很多用户都不太了解 Serverless,有的人认为 Serverless 主要是做小程序。我将会从Serverless的起源开始,和大家分享Serverless的发展以及现在的落地实践。希望和大家一起探讨,看看有哪些业务场景适合Serverless,能不能对业务产生价值。
Serverless 的发展轨迹
2012年,Serverless 这个单词第一次出现,由 Iron 公司提出,字面意思就是不需要服务器。但是真正被大家所熟知,是在2014年AWS推出Lambda的时候。Lambda产品的推出开启了云计算的新时代,之后所有的大厂都在跟进,比如微软、谷歌、IBM都先后推出自己的Serverless产品。
国内是在2017年的时候,阿里云和腾讯云先后推出了自己的Serverless平台。但这个时候,都是指FaaS(Function as a Service)。接着到2018年,大家开始渐渐接触到Serverless,更多还是支付宝小程序和微信小程序的云开发平台。随后到2019年,国内其他厂商如百度、华为、字节也都开始做Serverless,现在Serverless已经成了各大云厂商的标配。
Serverless 是云计算的2.0
为什么大家都要做 Serverless呢?因为大家都认为 Serverless 是云计算2.0。随着云计算的发展,Serverless已经成为一个技术趋势、一个理念、一个云的发展方向。
云计算领域有两篇非常著名的论文,是伯克利大学分别在2009年和2019年发表的。伯克利大学在2009年发表的一篇关于云计算的论文,预测了云计算的发展,比如计算资源可以按需索取、支持弹性、简化运维等,这些预测都已经实现。
在2019年2月发表的第二篇论文,预测Serverless是云计算下一个十年的发展方向。论文里也给出Serverless的定义,简单讲就是Serverless Computing,由FaaS+BaaS(Backend as a Service)构成一个Serverless软件架构。特点就是能够按需弹性、按需付费,这与CNCF的定义是类似的,应用以微服务或者函数的形式,拆解并部署到云上,能够按需去做弹性伸缩,按需付费,不用关心底层资源。
Serverless 是云原生发展的高级阶段
我们再来看下 Serverless 跟云原生有什么关系?
Serverless的出现,就像人类的演进过程,代表着生产力的解放,极大提升了客户用云的效率。Serverless在其之上封装了容器技术,是云原生的高级阶段。
Serverless是对用户强调No Server,本质并不是不需要服务器,而是将服务器全权托管给了云厂商,用户不用去关心,不用去管理,只用把业务部署到平台上来,只需聚焦业务逻辑代码,能够根据实际请求进行弹性伸缩,不用再去关心资源够不够。
Serverless 的核心价值
我们再看一下它的核心价值。
从物理机到Serverless,就像我们买车一样,如果说咱买个私家车,这个车的车况保险全部要自己关心,然后你要自己开;到了虚拟机之后,我们把业务host到云上,就像汽车租赁;然后再到网约车,我不用买车,不用关心车况,我们要从A点到B点,只需要打个车,完全按需付费,按需弹性。
抽象出来其实就是有3个核心价值:
第一个是弹性伸缩,它比较省事。比如说我们刚才有电商场景,需要弹性、扛大流量,Serverless能够及时把资源弹出来。
第二个特点,按需付费,我们用多少资源就花多少钱,不用为闲置资源来买单。
第三个就是简化运维,能够帮用户省去资源管理的烦恼。
我们可以更直观来看Serverless的价值:首先最上层是业务逻辑,其次是对接的数据库、存储、微服务框架等,往下要建立监控系统、日志系统,以及容灾和高可用等,再到底层还要维护各种各样的IaaS资源,如虚拟机集群。而Serverless帮用户省掉的是资源层和可观测层,平台负责底层弹性资源,包括所有的日志监控等,用户就只需要关心业务逻辑。
Serverless 的软件架构
作为开发者,我们可以直接把镜像或者代码包部署到Serverless计算平台上来,省去了整个资源的购买和环境部署这个过程。部署上来之后呢,后端可以跟存储、数据库进行交互,构成完整的Serverless 架构。之后通过像LB或者HTT的方式,直接去访问到业务代码,平台会根据用户的请求去做调度和弹性伸缩。Serverless平台支持负载均衡,应对各种突发流量,用户不用去关心后台资源。
组件架构有点复杂,本次不展开来讲。对于开发者,需要关注的是绿色部分,即业务代码和服务框架等,以及用什么样的工具和后端BaaS。Serverless平台会纳管所有基础设施,会做好消息缓存、流量调度、容灾、高可用等。
另一个非常重要的组件架构是Serverless应用引擎,它的本质是把K8S做了封装。如果企业有微服务业务,并且需要部署到K8S集群,而维护挑战比较大的话,就可以用这种形态。把开发好的微服务,或者单体应用直接托管到这个平台上来,就能够享受Serverless所带来的弹性伸缩和按需付费的价值。
Serverless 的落地实践
Serverless已有多个落地场景,在各个行业,无论是后台服务,还是REST API都可以部署到Serverless平台上。尤其是Serverless音视频处理、轻量ETL(低门槛数据分析/处理)、事件驱动、任务跑批、应用托管、微服务容器化等场景。
在Serverless平台上有非常多的应用case,比如,如果想要做微服务或者容器化转型,期望降低运维复杂度的同时,也能具备弹性伸缩、便捷发布的能力,就可以直接把服务部署到Serverless应用引擎。
再分享一个案例,前段时间,想必很多人都有看欧洲杯,国内是爱奇艺体育在做这个赛事直播,其背后的业务就是部署在Serverless应用引擎平台上。
对于爱奇艺体育团队来讲,最大的痛点之一是资源的弹性。因为体育赛事的直播流量有非常大的不确定性,面对流量激增,需要及时能够对后台服务进行扩容,如果按照峰值对资源进行保有,又会造成流量预估不准确的风险,以及一定程度上的资源浪费。
所以,Serverless应用引擎非常好地匹配了客户痛点问题,不仅解决了弹性扩缩的问题,也提升了资源利用率,同时配套的应用监控,也极大程度上提升了定位问题的效率。
Serverless 的未来
大面积取代Serverful,变为默认的计算范式:虽然Serverful不会完全消失,但随着Serverless存在的不足被逐个攻克,Serverlsss在云计算中所占的比重将会逐渐提升,变成云时代默认的计算范式。
拥抱整个容器生态:未来,Serverless会更多的去拥抱整个容器生态,当下容器是整个业界的一个主流的趋势,Serverless会和容器做更多的集成,比如镜像部署、镜像加速、以及集成k8s很多的能力。
加速运维关系的变化:Serverless 将会加速运维关系的转变,运维同学会从资源运维,逐步走向业务运维。
复杂任务编排、工具链及可观测等能力提升:Serverless会加强复杂任务编排、工具链和可观测等方面的能力。因为Serverless平台对底层资源做了高度封装,所以一定要把很多的监控指标去透露给用户,通过这些指标来做业务级的管理和管控。
我们希望Serverless能够真正给大家减负,让业务开发和维护变的更加简单,给业务带来更大的价值。(完)
阿里云原生专家洛浩:详解Serverless的起源、发展和落地实践
阿里云原生专家洛浩:详解Serverless的起源、发展和落地实践相关推荐
- 前沿分享|阿里云数据库高级技术专家 宋利兵:阿里云企业级自治数据库RDS详解
简介:本篇内容为2021云栖大会-企业级云原生数据库最佳实践论坛中,阿里云数据库高级技术专家 宋利兵关于"阿里云企业级自治数据库RDS详解"的分享. 本文将从2方面为大家介绍企业级 ...
- 阿里云主机Linux服务器配置步骤详解
下面我们一起来看看关于阿里云主机Linux服务器配置步骤详解,如果你正在使用阿里云主机我们可进入参考一下配置步骤哦,有兴趣的同学可进入参考. 一提到云主机,大家肯定熟知国内最知名品牌--阿里云了,后来 ...
- 阿里云怎么备案?阿里云ICP首次备案流程详解
阿里云怎么备案?阿里云ICP首次备案流程详解 最近有很多朋友咨询阿里云怎么备案?阿里云ICP首次备案流程详解.赵一八特意从阿里云官方网站整理相关资料,希望能够帮到大家.阿里云官网代金券2000元礼包领 ...
- nps内网穿透服务器搭建教程(ip显示阿里云的ip)-小宇特详解
nps内网穿透服务器搭建教程(ip显示阿里云的ip)-小宇特详解 一共有两部分,一部分是windows安装,一部分是linux系统(使得ip显示自己的阿里云). 前期准备 1.一台云服务器 2.配置安 ...
- 阿里云平台产品功能实战详解
阿里云平台产品功能实战详解 1. 云服务器ECS 1.1. ECS产品介绍 1.2. 通过Open API创建ECS 1.3. ECS最佳实践 2. 弹性伸缩Auto Scaling 2.1. 弹性伸 ...
- 企业级superset阿里云ESC搭建全流程详解
企业级superset阿里云ESC搭建全流程详解 你好! 作为一名大数据猿来说.你可能会需要轻量级大数据bi工具superset来帮助你快速实现数据的可视化展示.那么我们以阿里云云服务器ESC举例,帮 ...
- 什么是云原生及飞轮理论详解【Cloud Native 是道,Service Mesh 是术】
前言 特别指出:这次分享主要是希望起到抛砖引玉的作用,让大家更多的参与到云原生这个话题的讨论,希望后面有更多更好的分享.我们笨鸟先飞,起一个头. 内容主要围绕这几个问题,上半场我们将围绕前三个问题. ...
- 【云原生】Kubernetes CRD 详解(Custom Resource Definition)
文章目录 一.概述 二.定制资源 1)定制资源 和 定制控制器 2)定制控制器 3)Operator 介绍 1.Operator Framework 2.Operator 安装 3.安装 Operat ...
- 阿里云服务器搭建JAVA环境详解(jdk+mysql+tomcat)
网上的教程现在已经有很多了,我只是记录一下我自己搭建环境的过程 1.首先进入阿里云官网登录之后直接搜索"学生机",然后点击"云翼计划",我购买的是一个服务器EC ...
- 云原生之kubectl命令详解(二)及pod的相关操作
目录 一.kubectl命令详解 1.查看某个资源的详细信息:kubectl describe pod pod_name -n nameapace 2.查看指定命名空间中pod的基本信息:kubect ...
最新文章
- 鸿蒙2.0 安卓,华为鸿蒙2.0可以替代安卓吗,华为鸿蒙2.0优势在哪
- lda主题模型应用java_主题模型LDA及在推荐系统中的应用
- php连mssql 中文乱码,PHP连接MSSQL显示中文时为乱码_PHP教程
- sun服务器操作系统使用,SUN ILOM使用指南
- 三班的孩子们,你们现在还好吗?
- MySQL学习笔记——显示数据库信息
- typeorm 表名_typeORM 多对多关系不同情况的处理
- 记一次极其坑爹的Maven无法下载相关Jar包的问题:IDEA问题
- Django的设计模式
- MVC神韵---你想在哪解脱!(七)
- 混合现实平台 Mesh、云服务能力翻倍扩容、福利 150 万人……Ignite China 精彩盘点...
- Thrift RPC实战(七) 基于zookeeper和thrift的RPC服务发布订阅
- SPSS因子分析经典案例分享
- Python对象转json【包括嵌套对象转json,django的model转json】
- 单机类似节奏大师游戏源码
- 在线IDE~快速体验在线编程
- Android Q - 设置默认输入法
- 200元以下耳机推荐
- cocos creator微信棋牌小游戏 幼麟棋牌服务端分析笔记
- 北理工在线作业计算机的主要特点是( ),18春北理工《用户界面设计》在线作业-2...