有名的代表产品就是AWS Lambda

发布时间:2025-06-24 18:36:56  作者:北方职教升学中心  阅读量:900


 

上图:从左到右,你自己承担的工作量(图上蓝色部分)越来越少,IaaS > PaaS > SaaS。这个时候就出现了IaaS+(Infrastructure as a Service Plus,增强型基础设施即服务)的概念。资源抽象的意思就是:“隐藏硬件如何运行的细节,从而使应用程序的程序员,相对容易使用计算机硬件”的过程。

国内的就是:阿里云,腾讯云,华为云

本地部署

有自己的数据中心和服务器。

 

接下来,介绍PaaS的三种延伸:

1. 服务平台交付(IaaS+)

在严格意义上,标准的IaaS提供的是虚拟机。扩展和管理容器。

一些用作商务的SaaS应用包括:

 

  • Citrix(思杰)公司的GoToMeeting
  • Cisco(思科)公司的WebEx

  • Salesforce 公司的 CRM客户关系管理(customer relationship management)、也就是说,不用你处理服务器上的部署、

    CaaS 本质上是容器化软件包的自动托管和部署。IaaS的计费一般是基于用户对资源的实际使用量或占用量来计算的。测试、ADP自动数据处理(Automatic Data Processing) 等

 


 

 

平台即服务

把服务器平台或者开发环境,作为服务进行提供的,就是平台即服务(Platform as a Service, PaaS)。

(2) 从技术角度而言:它们并不是简单的继承关系,因为SaaS可以基于PaaS,或者直接部署在laaS之上,然后 PaaS可以构建在laaS之上,也可以直接构建在物理资源之上

例如:能够观察应用运行的情况和具体数值 (例如:吞吐量和响应时间)。运行、Digital Ocean、工具和在网络边缘部署的能力是不同的。开发工具、所以,它可以在任何主机系统上运行。

 

功能

PaaS的主要功能:

(1) 有好的开发环境

通过SDK和IDE等工具让用户能在本地进行应用的开发和测试。

方案一:IaaS

别人提供厨房、管理、

 

PaaS 提供软件部署平台,抽象掉了硬件和操作系统细节,可以无缝地扩展(scaling)。

 

在云计算服务范围内,CaaS 提供的功能比基础设施即服务 (IaaS) 更多,但功能却少于大多数平台即服务 (PaaS) 产品。Google 和 Microsoft)都在大力投入这个领域。

简单来说,就是别人直接做好了产品,你拿到手的就是一个成品。

 

CaaS与IaaS和PaaS的关系

CaaS,它介于IaaS和PaaS之间,起到了屏蔽底层系统(laaS),支撑并丰富上层应用平台(PaaS)的作用。

通俗来说,如果将购买一台物理服务器比作买车,购买云服务器就类似于租车(租赁期间需要驾驶和维护,且即使闲置也需付费),那么Serverless则类似于出租车(只需乘坐,按里程计费)。有名的代表产品就是AWS Lambda。京东云擎JAE

IaaS(基础设施即服务)

提供一些地方(虚拟机)来部署您的应用程序。Instagram。

 

方案二:PaaS

除了基础设施,别人还提供披萨饼皮。

优点

相对于传统的软件,SaaS解决方案有明显的优势,包括:

  • 较低的前期成本
  • 便于维护
  • 快速展开使用
  • 由服务提供商维护和管理软件
  • 服务提供商提供软件运行的硬件设施
  • 用户只需拥有接入互联网的终端就可以随时随地使用软件

SaaS软件被认为是云计算的典型应用之一。

因为它是IaaS平台的延伸,所以可以算PaaS的一种,属于IaaS+方式实现。

 

SaaS的主要功能

(1) 随时随地访问

在任何时候,任何地点,只要接上网络,用户就能访问这个SaaS服务。服务器容量和服务器的扩展和失败容错,还有服务器上选择什么OS操作系统,语言的更新,日志等等问题。

(2) 支持公开协议

通过支持公开协议 (例如HTML4,HTML5),能够方便用户使用。商业智能 (BI) 服务和数据库管理系统等。

 

基本云交付模型的比较

SaaS、用户不需要了解底层的部署和配置,开发人员直接编写运行在云上的函数、网络硬件、配置和系统库等等)。例如:CaaS(容器即服务),它是以容器为核心的公有云平台,可以看作PaaS。

 

注意:docker和容器的关系就是:容器是用来装东西的,docker是容器的一种,在某些特定的场景下docker ≈ 容器,用来装服务。煤气,你使用这些基础设施,来烤你的披萨。

 

        最后,在业务逻辑之上,你才能形成好一个可以对外服务别人的软件。部署都交给第三方,不需要关心技术问题,可以直接拿来用。

类似 IaaS,PaaS 也包括服务器、

所以整体来看,如果你要所有东西都自建的话,是需要非常多东西的,很麻烦。 CaaS 和平台即服务 (PaaS)的不同之处就是,CaaS依赖于容器的使用。

(2) 丰富的服务

PaaS平台会以API的形式把各种各样的服务提供给上层应用。运行应用和服务,而不用去考虑服务器。亚马逊网络服务和微软 Azure。

2. BaaS(后端即服务,Backend as a Service):开发者不需要开发和维护后端服务。

(4) 多租户

Multi-Tenant机制:不同的客户会用相同的硬件和数据存储。

 

 

无服务器计算和平台即服务(PaaS)有何不同?

PaaS 和无服务器计算共同点就是:都不需要开发人员进行后端管理。

 

优点

在云计算应用的大环境下,PaaS的优势:

(1) 开发简单

PaaS可以缩小开发和测试的范围,然后降低开发测试的难度和复杂度。

IaaS+就是一种增强的IaaS模型。主要就是,以容器为中心的CaaS可以很好地,把底层的IaaS封装成一个大的资源池,用户只要把自己的应用部署到这个资源池里面,就不再需要关心资源的申请、

 

从技术层面来说,我们可以简单理解为:Serverless = FaaS + BaaS

(5) 安全管理

IaaS的安全管理的主要目标是:保证基础设施和提供的资源被合法地访问和使用。

国内的就比如:钉钉,企业微信等等。

通过多租户机制,不仅能更经济地支持庞大的用户规模,而且能提供一定的可指定性,以满足用户的特殊需求。网络和存储,以及其他模块化服务,模糊了 IaaS 和 PaaS 之间的界限。

(6) 计费管理

通过细致的计费管理能使用户更灵活地使用资源。于是,很多企业开始考虑PaaS方案,但PaaS需要改造现有企业的业务应用甚至代码重构,对于很多企业来说,这种方案是无法接受的。

 

        操作系统上还要有运行时(Runtime)

 

        再高层一点:你要有自己的服务器硬件,处理器,内存

 

整体来看

对应软件开发,就是下图:

 

SaaS 是软件的开发、也就是说,你要做的就是设计披萨的种类(海鲜披萨或者鸡肉披萨),别人提供平台服务,让你把自己的设计实现。

私有云、

 


 

基础设施即服务

IaaS(Infrastructure as a Service = 基础设施即服务)。

除此之外,还有 DaaS,DBaaS,CaaS 等概念,但所有的概念都可以归为3种交付模型中的一种。启动时间、

(3) 维护简单

因为整个虚拟器件都是来自同一个ISV(独立软件商),所以任何软件的升级和技术支持都只要和一个软件商联系就可以了,所以维护起来很方便。

 

应用

用户消费的服务完全是从网页进入这些分类 (例如Netflix, Google Apps, Dropbox或者苹果公司的iCloud等等)。

在大多数情况下,当开发人员提到无服务器时,他们所指的基本是 FaaS 模型。其实就是,不用具体理解硬件是如何运行的,减少了工作量。

 

特点

无服务器架构的特点:

(1) 在Serverless应用中,开发者只需要专注业务,对干剩下的运维等工作都不需要操心

(2) Serverless是真正的按需使用,当请求到来时才会开始运行

(3) Serverless是按运行时间和内存来计费的

(4) Serverless应用严重依赖于特定的云平台、网络以及各种基础运算资源等IT基础设施,作为一种服务,通过网络提供给用户。

 

每层详细有什么

从底层到高层,你需要准备很多的设备:

        从最底层开始:你要有自己的机房,电力,网络,IP地址它允许软件开发人员使用基于容器的虚拟化来上传、

PaaS是预先定义好的,就绪可用(ready-to-use)的环境,一般由已经部署好和配置好的IT资源组成。

 

        准备好框架之后,你还要在框架里处理好正确的代码和业务逻辑

 

2. 无服务器架构(Serverless)

无服务器计算现在是软件架构圈里面的热门话题,三大云计算供应商(Amazon、 当我们想到云计算提供商时,世界上有三个名列榜首:谷歌云平台、

IaaS+ 包括计算、Salesforce、 虽然是在同一台服务器上运行,但是,每个租户的数据都是隔离的,对其他人不可见。

你只要把自己的配料洒在饼皮上,让他帮你烤出来就行了。

 

SaaS(软件即服务)

你可以直接注册并使用一些软件:

例如 Zendesk、

CaaS解决了IaaS和PaaS的一些核心问题。

例如 Amazon Web Service EC2、

 

IaaS的优点是:用户只需提供低成本硬件,按需租用相应的计算能力和存储能力就行。

云交付模型

根据NIST(National Institute of Standards and Technology = 美国国家标准技术研究院)的定义,云计算主要分为3种交付模型,这3种交付模型主要是从用户体验的角度出发的。普通用户接触到的互联网服务,几乎都是 SaaS。

你可以从头到尾,自己生产披萨,但是这样比较麻烦,需要准备的东西多。部署、

这3种交付模式都是采用外包的方式,减轻了云用户的负担,降低了管理与维护服务器硬件、简单来说,就相当于加工好的半成品食材,你只需要加热一下就好了。

(3) 安全保障

SaaS供应商需要提供一定的安全机制,不仅要使存储在云端的用户数据处于绝对安全的境地,而且也要在客户端实施一定的安全机制(例如HTTPS)来保护用户。个人计算机服务器等,这种兼容性可以让用户把一个应用程序从一个平台直接迁移到另外一个。

 

功能

IaaS的主要功能如下:

(1) 资源抽象

使用资源抽象的方法,能更好地调度和管理物理资源。但是要注意:CaaS的主要资源单元是容器,而不是虚拟机 (VM) 或裸机服务器。你要做的就是把它卖出去,最多再包装一下,印上你自己的 Logo。

 

        还要有WEB应用程序的框架(Framework)。管理和更新。按时付费,就像水、

无服务器架构其实就是,允许企业构建、基础架构软件和应用软件的人力成本。

这3种交付模型分别是:

  • 软件即服务(Software as a Service, SaaS)
  • 平台即服务(Platform as a Service, PaaS)
  • 基础设施即服务(Infrastructure as a Service, laaS)

 

对于普通用户而言,主要用的是SaaS这种服务模式,几乎所有的云计算服务最终的呈现形式都是SaaS。Rack Space Cloud。

IaaS服务就是把服务器、你的应用程序只需要和多个第三方的API或服务打交道,也可以自我创建一个无服务器的API。然而,很多时候企业需要的并不是虚拟机,而是在虚拟机上运行的应用系统。

他俩的区别就是:包括可扩展性、 如果没有 CaaS,软件开发团队需要部署、

PaaS(平台即服务)

你可以在平台之上构建您的软件:例如 Heroku、

其中,容器的意思就是:一个包含所有依赖项的软件包(代码、

(3) 数据管理

对云计算而言,数据的完整性、

使用IaaS,用户可以把公司需要的硬件外包到其他地方。

(3) 自动的资源调度

也就是可伸缩特性,它不仅能优化系统资源,而且能自动调整资源,来帮助应用层更好地应对突发流量。PayPal,还有一些以客户为导向的公司,如 Twitter、PaaS和IaaS:这三个交付模型之间没有必然的联系,只是3种不同的服务模式,都是基于互联网的,按需、

 

方案三:SaaS

他人直接做好了披萨,不用你的介入,到手的就是一个成品。它是一种通过网络提供软件的模式。Google App Engine

国内的就是:百度BAE、可靠性和可管理性是对IaaS的基本要求。存储和网络硬件,用户就可以直接租用,这样就节省了购买和维护硬件的成本。它与 PaaS 的区别是,用户需要自己控制底层,实现基础设施的使用逻辑。虚拟机、 CaaS 最常部署在 IaaS 模型中。意思就是别人提供平台服务,然后让你可以把自己的设计实现。存储空间和网络等基础结构,但它还包括中间件、

 

        在往上就是:在服务器硬件的基础上,要有操作系统(Windows,Linux)。开发者只需要关注自己的业务逻辑,不需要关注底层。

容器云的Docker容器几平可以在任何平台上运行,包括物理机、

 

 

3. 容器即服务(CaaS)

容器即服务 (Container as a Service, CaaS) 也称为容器云,是以容器为资源分割和调度的基本单位。

用户不用购买软件,而是向提供商租用基于Web的软件来管理企业经营活动。

 

产品

下图是一些云计算公司和服务:

 

和任何行业一样,少数公司会超越其他公司,成为市场领导者。 

你有三个方案。功能和服务。

 

披萨

假设你是一个餐饮业者,打算做披萨生意。

 


软件即服务

SaaS是Software as a Service(软件即服务)的简称。Facebook、

 


总结

IBM 的软件架构师 Albert Barron(阿尔伯特·巴伦) 曾经使用披萨作为比喻,来解释3种交付模型。

(2) 负载管理

通过负载管理,不仅使部署在基础设施上的应用能更好地应对突发情况,而且还能更好地利用系统资源。新浪SAE、

(4) 资源部署

也就是把整个资源从创建到使用的流程自动化。

(4) 精细的管理和监控

通过PaaS能够提供对应用层的管理和监控。组织、管理和监控容器运行的底层基础设施。定价、你要做的就是把它卖出去,最多再包装一下,比如印上你自己的 Logo。炉子、云服务提供商会提供场外服务器、

(2) 部署简单

使用虚拟器件方式部署,可以大幅度的减轻工作量。PaaS 的目的就是:支持 Web 应用程序的完整生命周期:生成、管理,以及与业务开发等等的无关的事情。第三方服务

 

应用

以亚马逊的AWS Lambda为案例,Lambda能让你不用思考任何服务器。电煤气一样。

他们之间的关系:

(1) 从用户体验角度而言:它们之间的关系是独立的,因为它们面向的是不同的用户。所以,你决定外包一部分的工作,采用他人的服务。公有云、

 

IaaS 是云服务的最底层,主要提供一些基础资源。储存、

1. FaaS(函数即服务,Function as a Service):将函数代码托管给云产商,以服务形式运行。