博主说:常识性概念,对 IaaS、PaaS 和 SaaS 还有些迷糊的童鞋,可以通过此文掌握之。
越来越多的软件,开始采用云服务。
云服务只是一个统称,可以分成三大类。
它们有什么区别呢?
IBM 的软件架构师 Albert Barron 曾经使用披萨作为比喻,解释这个问题。David Ng 进一步引申,让它变得更准确易懂。
请设想你是一个餐饮业者,打算做披萨生意。
你可以从头到尾,自己生产披萨,但是这样比较麻烦,需要准备的东西多,因此你决定外包一部分工作,采用他人的服务。你有三个方案:
方案一:IaaS
方案二:PaaS
方案三:SaaS
以上三种方案,可以总结成下面这张图:
从左到右,自己承担的工作量(上图蓝色部分)越来越少,IaaS > PaaS > SaaS。对应软件开发,则是下面这张图:
SaaS 是软件的开发、管理、部署都交给第三方,不需要关心技术问题,可以拿来即用。普通用户接触到的互联网服务,几乎都是 SaaS,下面是一些例子:
PaaS 提供软件部署平台(runtime),抽象掉了硬件和操作系统细节,可以无缝地扩展(scaling)。开发者只需要关注自己的业务逻辑,不需要关注底层。下面这些都属于 PaaS:
IaaS 是云服务的最底层,主要提供一些基础资源。它与 PaaS 的区别是,用户需要自己控制底层,实现基础设施的使用逻辑。下面这些都属于 IaaS:
转载声明:本文转自「阮一峰的网络日志」,IaaS,PaaS,SaaS 的区别。