背景

随着AWS Lambda的诞生,无服务器与FaaS一起出现在舞台中,Serverless也开始进入人们的视野。全球各大云服务厂商都纷纷推出各自的Serverless平台,2017年国内两大云服务厂商阿里云、腾讯云先后推出各自的Serverless产品。

先了解下什么是云计算

云计算是通过 Internet 按需提供计算能力、数据库存储、应用程序和其他 IT 资源,采用按使用量付费的定价模式。
在这里插入图片描述
云计算的发展历程:IaaS=>PaaS=>SaaS=>BaaS=>FaaS

什么是无服务器计算?

无服务器计算是一种计算方法,可将对常见基础结构管理任务(例如,扩展,调度,修补,配置等)的责任转移给云提供商和工具,开发者可以将时间和精力集中在针对其应用程序的业务逻辑上或实现上。

特点:

  • 无服务器模型不需要基础架构的管理和操作,从而使开发人员可以更窄地关注代码/自定义业务逻辑。
  • 无服务器计算仅在每个请求的基础上按需运行代码,并随着所服务请求的数量透明地扩展。
  • 无服务器计算使最终用户仅需为使用的资源付费,而无需为空闲容量付费。
  • 从根本上说,无服务器是要花更多的时间在代码上,而不是在基础架构上。

无服务器计算就是没有用服务器吗?

无服务器计算中仍然有服务器。

之所以使用“无服务器”这个名称,是因为该名称描述了最终用户的体验。在一种称为“无服务器”的技术中,底层服务器的管理需求对于最终用户是不可见的。服务器仍然在,用户只是看不到它们或与之交互。

“无服务器”架构–Serverless介绍

Serverless架构,是“无服务器”架构。所谓的“无服务器”并不是真的脱离了物理上的服务器,而是指代码不会明确地部署在某些特定的平台或者硬件的服务器之上,运行代码的托管环境是由Serverless平台提供。

在这里插入图片描述
Serverless 又被分为了 BaaS 和 FaaS,Baas 包含了存储、数据库、队列、缓存等各种形态的 Serverless 服务;而 FaaS 通常指的是函数即服务 Function as a Service 产品。

Faas介绍

“Functions as a Service”即FaaS函数即服务(功能即服务),FaaS 是Serverless 的子集,也是实现整个应用 Serverless 化的核心服务。

Faas应用是指一部分服务逻辑由应用实现,但跟传统架构不同在于:他们运行于无状态的容器中,可以由事件触发,被第三方管理,功能上FaaS不需要关心后台服务器或者应用服务,只需关心自己的代码即可。

Faas专注于事件驱动的计算范例,其中应用程序代码或容器仅响应事件或请求而运行。

借用两张图来说明函数计算平台的结构和工作原理:
在这里插入图片描述

在这里插入图片描述

优势?

  • 无服务器管理
    无需预置或维护任何服务器。无需安装、维护或管理任何软件或运行时。

  • 灵活扩展
    您的应用程序可自动扩展,或通过切换占用资源(如吞吐量、内存)的单位数(而不是切换单个服务器的单位数)来调整容量,从而实现扩展。

  • 按价值付费
    为一致的吞吐量或执行持续时间(而不是服务器单元)付费。

  • 自动化的高可用性
    无服务器应用程序提供内置可用性和容错功能。您无需构建这些功能,因为运行此应用程序的服务在默认情况下会提供这些功能。

无服务器Serverless特点:

  1. 只关注自己的代码,无需重复构建服务器.,环境等基础设施。

  2. 支持云端调用,无状态计算,时间驱动,API调用。

  3. 保持代码轻量,简洁。

  4. 没有实例,服务器,或者容器概念。

  5. 将客户满意作为开发工程的重中之重。

  6. 提供最大限度的服务选择自由。

  7. 关注产品目标和技术可复用。

  8. 在编写代码之前进行必要的配置。

  9. 拥有构建架构的完整生命周期。

  10. 全新的应用部署。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐