云服务应用越来越广泛,为毛?很简单,软件服务等部署可以省去很多需要DIY的事。
看看下面的一张图,关于怎么吃到披萨的示例,您可以清楚了解到其中的差异
第一种:想吃披萨从头忙到尾什么都得准备,从原料到烤箱需一应俱全,没有的都得买买买。
第二种:想吃披萨,家里是有烤箱。准备面团,配料,烤烤OK了。
IaaS
- 他人提供厨房、炉子、煤气,你使用这些基础设施,来烤你的披萨。
第三种:想吃披萨,面团配料都不用买,超市买个盒装(或者外卖送来),回来烤一下就行。
PaaS
- 除了基础设施,他人还提供披萨饼皮。你只要把自己的配料洒在饼皮上,让他帮你烤出来就行了。也就是说,你要做的就是设计披萨的味道(海鲜披萨或者鸡肉披萨),他人提供平台服务,让你把自己的设计实现。
第四种:想吃披萨,直接披萨店吃,带嘴就行。
SaaS
- 他人直接做好了披萨,不用你的介入,到手的就是一个成品。你要做的就是把它卖出去,最多再包装一下,印上你自己的 Logo。
云服务只是一个统称,可以分成三大类。
- IaaS:基础设施服务,Infrastructure-as-a-service
- PaaS:平台服务,Platform-as-a-service
- SaaS:软件服务,Software-as-a-service
对应软件开发,层级应该 ~IaaS > PaaS > SaaS,自己(或者说用户)承担的工作量,下图可体现出来
总结一下就是:
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
转载声明:本文转自「阮一峰的网络日志」,IaaS,PaaS,SaaS 的区别。