越来越多的软件,开始采用云服务。
云服务只是一个统称,可以分成三大类。
IaaS:基础设施服务,Infrastructure-as-a-service
PaaS:平台服务,Platform-as-a-service
SaaS:软件服务,Software-as-a-service
它们有什么区别呢?
SaaS 是软件的开发、管理、部署都交给第三方,不需要关心技术问题,可以拿来即用。普通用户接触到的互联网服务,几乎都是 SaaS,下面是一些例子。
客户管理服务 Salesforce
团队协同服务 Google Apps
储存服务 Box
储存服务 Dropbox
社交服务 Facebook / Twitter / Instagram
PaaS 提供软件部署平台(runtime),抽象掉了硬件和操作系统细节,可以无缝地扩展(scaling)。开发者只需要关注自己的业务逻辑,不需要关注底层。下面这些都属于 PaaS。
Heroku
Google App Engine
OpenShift
IaaS 是云服务的最底层,主要提供一些基础资源。它与 PaaS 的区别是,用户需要自己控制底层,实现基础设施的使用逻辑。下面这些都属于 IaaS。
Amazon EC2
Digital Ocean
RackSpace Cloud
微软的 Azure 云服务有一张图,解释这三种模式的差异。
上图中,绿色的部分是云服务商决定的,紫色的部分是用户决定的。可以看到,SaaS 模式下用户没有任何自主权,只能使用给定的应用程序;PaaS 模式下可以自己安装应用程序,但是不能定制操作系统;IaaS 模式下则是云服务商提供(虚拟的)硬件,从操作系统开始都可以自己选择和定制。
参考
SaaS, PaaS and IaaS explained in one graphic, by David Ng
When to use SaaS, PaaS, and IaaS, by Eamonn Colman
作者:阮一峰
原文地址:http://www.ruanyifeng.com/blog/2017/07/iaas-paas-saas.html