什么是平台即服务 (PaaS)?
PaaS(平台即服务)提供了一个用于开发、运行和管理应用程序的完整、灵活且经济高效的云平台。
订阅 IBM 时事通讯
黑色和蓝色背景
什么是 PaaS?

PaaS(平台即服务) 是一个云计算 模型,旨在为客户提供完整的 云 平台(硬件、软件和基础架构),用于开发、运行和管理应用程序,而无需考虑 在本地构建和维护该平台通常会带来的成本、复杂性和不灵活性。

 PaaS 提供商 将服务器、网络、存储、 操作系统软件、数据库、 开发 工具等一切工具都托管在其 数据中心上。 通常,客户可以支付固定费用来为指定数量的用户提供指定数量的资源,也可以选择“按使用量付费” 定价 模式以仅为他们使用的资源付费。 如果 PaaS 客户必须构建和管理自己的 本地 平台,那么这两种选择都能让 PaaS 客户以更低的成本更快地构建、测试、部署运行、更新和扩展应用程序。

所有领先的 云服务 提供商(包括 Amazon Web Services (AWS)、Google Cloud、 IBM Cloud 和 Microsoft Azure)都有自己的 PaaS 产品。 流行的 PaaS 解决方案 也作为开源项目提供(例如  Apache Stratos、Cloud Foundry)或由软件供应商提供(例如  Red Hat OpenShift 和 Salesforce Heroku)。

PaaS 的优势

与本地 平台相比, PaaS 最常被提及的优势包括:

  • 缩短上市时间。 借助 PaaS,您无需购买和安装用于构建和维护应用程序开发平台的硬件和软件, 开发团队 也不必等您完成这些工作。 您只需接入 云服务 提供商的 PaaS ,即可立即开始配置资源并进行开发。

  • 以经济实惠的方式访问更多种类的资源。 PaaS 平台通常可访问的应用程序堆栈上下的选项(包括 操作系统、 中间件、数据库和 开发 工具)要比大多数组织实际能够维护的选项更广。 

  • 提高试验自由度并降低风险。 PaaS 还允许您试用或测试新的 操作系统、语言和其他工具,而无需对它们或运行它们所需的基础架构进行大量投资。

  • 提供简单且经济高效的可扩展性。   如果使用 本地 平台,扩展操作始终成本高昂,往往会造成浪费,有时候还不够充分:您必须购买额外的 计算、存储和网络容量来应付预期的流量高峰;其中大部分容量在低流量期间处于闲置状态,而且其容量无法及时增加以便应对意外的流量激增情况。 借助 PaaS,您可以购买额外的容量,并在需要时立即开始使用此容量。

  • 为开发团队提供更高的灵活性 。 PaaS 服务 提供了一个共享的 软件 开发 环境 ,允许开发团队和运营团队从任何具有互联网连接的位置访问其所需的所有工具。

  • 降低整体成本。 显然, PaaS 使组织能够避免与构建和扩展应用程序平台相关的资本设备费用,从而降低成本。 但 PaaS 也可以降低或消除软件许可成本。 通过处理补丁、更新和其他管理任务, PaaS 可以降低总体应用程序管理成本。 
PaaS 的工作原理

通常, PaaS 解决方案 包含三个主要部分:

  • 云基础架构,包括 虚拟机 (VM)、操作系统软件、存储、网络、防火墙

  • 软件,用于构建、部署和管理应用程序

  • 图形用户界面 (GUI),开发团队或 DevOps 团队可以在其中完成整个应用程序 生命周期内的所有工作

由于 PaaS 通过 GUI 在线界面提供所有标准 开发工具 ,因此开发人员可以从任何地方登录该界面以协作处理项目、测试 新应用程序或推出已完成的产品。 应用程序是使用中间件在 PaaS 中设计和开发的。  通过简化的 工作流程,多个开发团队和运营团队可以同时处理同一个项目。

PaaS 提供商将 管理您的大部分 云计算 服务,例如服务器、 运行时 和 虚拟化。 作为 PaaS 客户,贵公司将负责管理应用程序和数据。

PaaS、IaaS 和 SaaS

与 PaaS 一样,基础架构即服务 (IaaS) 和软件即服务 (SaaS) 也是非常常见的云计算服务模型。 事实上,即使组织没有专门购买这三个模型,他们同时使用这三个模型也是很常见的情况。 需要澄清以下概念:

IaaS 是对由云提供商托管的“原始” IT 基础架构(物理服务器、 虚拟机、存储、网络、 防火墙)的互联网访问。 有了 IaaS,您就无需拥有、管理和维护 本地 基础架构,也避免了与之相关的开支。 通过 IaaS ,组织提供了自己的应用程序平台和应用程序。 

任何 PaaS 产品 都必须包含托管它所需的 IaaS 资源,即使这些资源没有被离散分解或称为 IaaS。

SaaS 是您通过云使用的应用软件,就好像它安装在您的计算机上一样(在某些情况下,它的 某些部分 安装在您的计算机上)。 SaaS 使贵组织可以使用应用程序,而无需设置用于运行该应用程序的基础架构以及维护该应用程序(应用错误修订和更新、解决中断等)。 Salesforce 和 Slack 是流行的 SaaS 产品示例 ; 大多数 Web 应用程序 都被视为 SaaS。

每个 SaaS 产品都包含托管它所需的 IaaS 资源,并且至少包含运行它所需的 PaaS 组件。 一些 SaaS 供应商还提供了独立的 PaaS ,它允许第三方定制 SaaS 产品。

阅读有关 IaaS、PaaS 和 SaaS 的更多信息。
PaaS 用例

通过提供随时可用的集成平台,同时使组织能够将基础架构管理工作转移给云提供商 并专注于构建、部署和管理应用程序,PaaS 可以简化或推进许多 IT 计划,包括:

  • API 开发和管理:  PaaS 的内置框架使团队更容易开发、运行、管理和 保护 API (应用程序编程接口), 以在应用程序之间共享数据和 功能 。

  • 物联网 (IoT): PaaS 开箱即支持一系列 编程语言 (Java、Python 和 Swift 等),以及用于 IoT 应用程序开发 和 实时 处理 IoT 设备所生成数据的多种工具和应用程序环境。

  • 敏捷开发和 DevOps: PaaS 可以提供完全配置的环境,以用于自动完成软件应用程序生命周期,包括集成、交付、安全、测试和部署。

  • 云迁移和云原生开发: 通过其现成可用的工具和集成功能, PaaS 可以简化现有应用程序向云端的迁移,尤其是通过 改变平台 (通过修改将应用程序迁移到云端,以更好地利用云可扩展性、 负载均衡 和其他功能)或 重构 (利用 微服务、 容器 和其他 云原生 技术重新设计部分或全部应用程序架构)。

  • 混合云 战略: 混合云 集成了 公共云 服务、 私有云 服务和 本地 基础架构 ,并在这三者之间实现了编排、管理和应用程序可移植性。 这将打造一个统一且灵活的分布式计算环境,组织可以在最合适的计算模型上运行和扩展其传统或云原生工作负载。 合适的 PaaS 解决方案允许开发人员只构建一次,然后在 混合 云 环境中的任何位置进行部署和管理。
专门构建的 PaaS 类型

许多云供应商、软件供应商和硬件供应商都提供了 PaaS 解决方案 ,以用于构建特定类型的应用程序或者构建与特定类型的硬件、软件或设备进行交互的应用程序。

  • AIPaaS(人工智能 PaaS) 让 开发团队可以 构建 人工智能 (AI) 应用程序,而无需购买、管理和维护这些应用程序所需的重要但十分昂贵的计算能力、存储容量和网络容量。 AiPaaS 通常包括经过预先训练的 机器学习 和 深度学习 模型,开发人员可以原样使用或进行自定义,此外还提供即用型 API 以在现有或新的应用程序中集成特定的 AI 功能,如 语音 识别 或语音到文本转换。 

  • iPaaS(集成平台即服务) 是一个用于集成应用程序的云托管解决方案。 iPaaS 为组织提供了一种标准方法来连接 公共云、 私有云 和 本地 环境中的数据、流程和服务,而无需购买、安装和管理自己的 后端 集成硬件、 中间件 和软件。 (请注意, Paas 解决方案 通常包括某种程度的集成功能 - 例如API 管理 - 但 iPaaS 提供了更全面的集成功能。)

  • cPaaS(通信平台即服务) 是一种 PaaS ,可让开发人员轻松地向应用程序添加语音(呼入和呼出电话)、视频(包括电话会议)和消息传递(文本和社交媒体)功能,而无需投资专门的通信硬件和软件。 

  • mPaaS(移动平台即服务) 是一种用于简化面向移动设备的 应用程序开发 的 PaaS 。 mPaaS 通常提供低代码(甚至是简单的拖放)方法来访问特定于设备的功能,包括手机的摄像头、麦克风、运动传感器和地理定位(或 GPS)功能。
相关解决方案
IBM Cloud Pak® for Applications

实现现代化、构建新应用程序、降低成本并实现 ROI 最大化。

探索 IBM Cloud Pak® for Applications
Red Hat® OpenShift® on IBM Cloud®

一键式部署高度可用的完全托管式集群。

探索 Red Hat® OpenShift® on IBM Cloud®
资源 2021 年企业微服务

应用程序开发的微服务方法可能会给组织带来重大挑战。 但越来越多的微服务用户认为,从取得的成果看来,所付出的努力都是值得的,其中包括提高开发人员工作效率、提升客户满意度以及缩短上市时间。

IaaS、PaaS 与 SaaS

了解和比较三种最受欢迎的云计算服务模式。

什么是云计算?

借助云计算,您可通过互联网“插入”基础架构,并使用计算资源,而无需在本地安装和维护这些资源。

采取下一步行动

Red Hat® OpenShift® on IBM Cloud® 是一项完全托管的 OpenShift 服务,它利用 IBM Cloud 的企业规模和安全性来自动完成更新、扩展和配置过程并处理意外的流量激增情况。 只需单击一下,您的团队就可以借助广泛的工具和功能来开始开发和实现应用程序现代化,并部署高度可用的完全托管式集群。

详细了解 Red Hat® OpenShift® on IBM Cloud®