Serverless 技术选型|学习笔记

本文涉及的产品
简介: 快速学习 Serverless 技术选型

开发者学堂课程【Serverless 常见架构模式:Serverless 技术选型】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/842/detail/14012


Serverless 技术选型


内容简介:

1. 概览

2. 函数计算

3. Serverless 应用引擎

4. Serverless Kubernetes

5.总结

 

1、概览

随着技术引进 Serverless 已经不再是仅仅只面向函数的一种,而是变得非常丰富,包括面向函数的函数计算,还有面向应用的 Serverless 产品,Serverless 应 用引擎,以及面向容器的 Serverless 产品,ServerlessKubernetes,帮助用户能把自己的不同类型的业务,或者面向不同企业的使用习惯提供 Serverless 形态,帮助用户实现 Serverless 的价值。

分别针对面向函数、面向应用、面向容器介绍。

图片19.png


2、函数计算:

最常见的产品形态,在阿里云上有一种产品叫函数计算。他的使用如下图,开发者需要编写代码,然后将代码上传到函数计算,到这一步对开发者来说,工作已经完成,也不会产生计费。函数真正运行且计费需要触发来触发的,触发的方式有很多,可以通过函数计算提供的 API/SDK 进行,也可以通过一系列事件源触发,

比如阿里云的 OSS、日志产品,触发之后会根据调用频率去弹性的弹出实例来应对客户的需求,后会按照弹性频率的情况进行付费,也就是 Serverless 服务模式,会根据用户使用资源的量进行付费,在这个过程中,开发者有丰富的编程理念的体验,同时还提供特殊的运行环境,在这种运行环境下,用户可以使用任何语言去实现其他的函数,然后上传到函数计算中使用,开发者需要关注代码,而之后网络配置的管理,基础资源的管理都不用开发者关注。

通用 Serverless 计算平台

云端事件源无缝集成

自动弹性伸缩,按量付费

只需专注业务逻辑开发即可

调运方式:同步调用,异步调用

丰富的编程语言: nodejs 、python、 php、 C#;自定义,可以使用任何语言,比如 go

函数计算典型场景:

1.各种编程语言的 WebAPP 或者 WebAPl 相关开发群体

Java:Spring Boot                    传统 web 应用一键迁移!

PHP:WordPress, larval...              小程序后端!

Python:Django, Flask...               阿里云 API 云市场!

C#:ASP. Net Core WebApp and WebApi

Custom:Go,C/C++, Ruby, Lua...

2.对计算力有很大的弹性需求:AI推理、音视频等多媒体处理、文档转换,网页截图等处理。

3.事件驱动:其他阿里云服务作为事件源触发函数.简化变成模型、各种 webbook 回调、定时任务、很好的粘合剂。

函数计算-核心优势

1.专注业务逻辑开发、免运维

只需专注业务代码编写,无需关心任何底层基础设施及软件网络配置,借助函数版本/别名功能实现灰度发布或 A/B 测试

2.VM 级别租户隔离

身份认证、访问控制、数据安全、运行时安全、网络安全方面对用户的应用进行全方位的保护

3.3AZ 高可用架构

接管了基础设施的管理工作,系统能自动处理基础设施层的各种错误

4.毫秒级自动弹性伸缩

短时间内处理大量数据文件,或者在请求流量快速增加的同时仍能保持稳定的延时,是明显波峰波谷应用最佳终结者

5、按需付费,只需为代码实际运行消耗的资源付费,题材要可以优化负载较为平稳业务的财务成


3、Severless 应用引擎:

SAE:首款面向应用的 Serverless  PaaS 平台

实现了 Serverless 架构+微服务架构的完美结合,支持多种微服务征渠、多种部署渠道(UII、云效、插件等)、多种部署方式(war、jar、镜像)核心场景主要面向在线应用:微服务应用、web 应用、多语言应用等。

平台提供 Kubemetes 集群来隔离应用,保证应用的独立,同时 SAE 还对微服务应用提供特殊的支持,内置了简单的微服务管理,包括服务注册发现、配置管理、负载均衡、限流降级、服务安全等,使微服务管理降低门槛。

强化开发者工具: Cloud toolkit 插件、云效 RDC、代码库、镜像仓库等

SAE 典型场景:

( 低门槛微服务架构转型!各种语言应用快速上云/搬站!

云市场、云开放平台!)

1.各种语言的应用快速上云/搬站

Java;webapp,微服务应用零容器基础快速上云

PHP、Nodejs、Python、Go、C++等单体应用上云

期望本地一键部署到云端

物联网、传统行业等客户上云/搬站时,对交付效率有极致需求,期望得到一站式开箱即用的 PaaS 体验。

2.灵活&弹性使用计算资源

电商大促应对峰值流量

智慧安防行业火警监控、烟感报警等,要求极致弹性效率

在线教育、医疗政府、证券等行业固定潮汐使用计算资源

大中型企业多套开发测试环境,固定时段使用计算资源,希望能节省成本

3.低门槛微服务架构转型

中小企业快速构建云上微服务

开源自建 Spring Cloud/Dubbo 应用为了稳定性兜底,计划迁云

单体应用微服务改造

4.集成方

云市场、云开放平台、小程序云魔笔等期望集成应用 PaaS 底座能力

外部垂直行业 ISV 集成,打造某垂直领域的 Serverless 方案。

产品核心优势:

1.零代码改造,即享免运维体验

基于 Serverless 某构,屏蔽底层 IaaS 运维和 X8s1 留节。用户零代码改造平滑迁移企业在线应用。

2.精益成本,不为闲置浪费

按需使用,按分钟计费,无需长期保有固定iaaS资源。

3.自动弹性

支持定时弹性和监控弹性,应对应用突发场景下秒级弹性伸缩,保障业务SLA。

4. 零基础,开箱即用微服务和K8s能力

完美支持各种主流微服务框架、支持镜像/war/jar三种部署方式。

5.高安全

底层基于安全容器运行应用,网络通过 VPC 隔离,双重保障应用运行时安全。

6.服务集成,一站式体验

自动集成阿里云上的基础设施类产品;SLB、SLS、NAS 等和微服务生态周边产品:ACM、ARMS、AHAS,提供一站式的解决方案。

 

4、Serverless   Kubernetes:

容器->容器编排-> Serverless 容器编排:

1.ESC 中运行容器

Process:部署单台 ECS、部署容器、接入 EIP/SLB。

Pain:ECS 宕机、容器扩容、ECS 机器运维。

2. 容器编排系统

Process:选择多台 ECS,创建 k8s 集群、部署 Deployment /Service 应用、使用标准化容器编排能力

Pain:集群容量规划、ECS 机器运维、机器长时间闲置,资源利用率不高。

3.Serverless 容器编排系统(ASK)

Process: 创建 k8s 集群(无ECS节点)、部署  Deployment /Service 应用、使用标准化容器编排能力。

Happy:无需集群容量规划,无限容量、无需 ECS 机器运维、无需担心机器资源闲置、无需管理基础设施。

Serverless   Kubernetes 典型场景:

场景一:免运维的应用托管

无需管理基础设施,专注应用开发

灵活弹性、按需使用

结合预留实例券大幅降低计算成本

支持原生[ Aubernetes 生态,包括 Helm Chart 部署等

场景二:突发流量的弹性扩容

系统关键模块弹性扩容,应对突发流量,使得端到端扩容速度缩短70%

端到端的伸缩性能达到 30 秒 500 个容器实例

ASK 独享 Master,免运维、按需使用

ECI 镜像快照使得“零秒”镜像下载

场景三:大数据计算任务

使用/C 提供的极致弹性能力支撑 Spark/Presto 大数据计算

提交作业前无需预留任何资源,“无限”容量,按需使用,高并发,高峰期10000+pod运行。

有效降低客户计算成本

可使用/C做在线容灾

场景四:CI/CD

使用 ASK 运行 Jenkins/Gitlab-Runner,按需创建 Job,极大降低计算成本。

部署阶段无缝对接,无需事先申请资源,实现应用的快速测试和预发。

Serverless  容器:关注应用而非关注基础设施

1.基于容器:敏捷部署、安全隔离、生态连接、高移植性

2.无服务器管理:无需OS和系统软件维护、、无需节点容量规划、无需升级服务器、零基础设施运维

3.弹性扩容:无限“容量、秒级扩容、基于容器扩容

4.按需付费:没有闲置资源、更高资源利用率、总体更低计算成本

 

5总结:

在 Serverless 领域中,不仅是函数计算和应用类型,而是面向不同的对象群体和使用习惯,这里有面向函数的函数计算,面向服务的 Serverless 引擎,以及面向容器的 Serverless Kubernetes,用户可以根据自己的使用习惯、场景、应用类型选择所用的 Serverless 产品。

相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
新零售 运维 Kubernetes
SAE -第一课《 Serverless 应用引擎的过去、现在和未来》|学习笔记
快速学习 SAE -第一课《 Serverless 应用引擎的过去、现在和未来》
374 0
SAE -第一课《 Serverless 应用引擎的过去、现在和未来》|学习笔记
|
Web App开发 人工智能 弹性计算
FC -第一课-《从云计算到云原生再到 Serverless 架构》|学习笔记
快速学习 FC -第一课-《从云计算到云原生再到 Serverless 架构》
326 0
FC -第一课-《从云计算到云原生再到 Serverless 架构》|学习笔记
|
云安全 供应链 Cloud Native
serverless学习笔记: 解读云原生的 2022 0x2 产业落地篇
serverless学习笔记: 解读云原生的 2022 0x2 产业落地篇
122 0
serverless学习笔记: 解读云原生的 2022 0x2 产业落地篇
|
Kubernetes Cloud Native 关系型数据库
serverless学习笔记: 解读云原生的 2022 0x1
serverless学习笔记: 解读云原生的 2022 0x1
142 0
serverless学习笔记: 解读云原生的 2022 0x1
|
运维 NoSQL Serverless
serverless 学习笔记: 解读Serverless的2022
serverless 学习笔记: 解读Serverless的2022
147 0
serverless 学习笔记: 解读Serverless的2022
|
存储 弹性计算 Cloud Native
serverless 学习笔记: 阿里云已将 Serverless 数据库大规模落地,这是否代表着数据库的新风向?
serverless 学习笔记: 阿里云已将 Serverless 数据库大规模落地,这是否代表着数据库的新风向?
262 0
serverless 学习笔记: 阿里云已将 Serverless 数据库大规模落地,这是否代表着数据库的新风向?
|
运维 Kubernetes Serverless
serverless学习笔记 | 关于 Serverless 应用架构对企业价值的一些思考
serverless学习笔记 | 关于 Serverless 应用架构对企业价值的一些思考
166 0
serverless学习笔记 | 关于 Serverless 应用架构对企业价值的一些思考
|
人工智能 缓存 运维
serverless学习笔记 | 颠覆开发模式的创新发布背后,我看见了云计算的下一个十年
serverless学习笔记 | 颠覆开发模式的创新发布背后,我看见了云计算的下一个十年
166 0
serverless学习笔记 | 颠覆开发模式的创新发布背后,我看见了云计算的下一个十年
|
存储 弹性计算 自然语言处理
serverless 入门与实践48 | 学习笔记: 说说关系型数据库与Serverless
serverless 入门与实践48 | 学习笔记: 说说关系型数据库与Serverless
177 0
|
Serverless 数据处理 开发者
serverless 入门与实践47 | 学习笔记: 应用 Serverless 化,让业务开发心无旁骛
serverless 入门与实践47 | 学习笔记: 应用 Serverless 化,让业务开发心无旁骛
218 1
serverless 入门与实践47 | 学习笔记: 应用 Serverless 化,让业务开发心无旁骛

热门文章

最新文章

相关产品

  • 函数计算