最近有朋友问我,什么是IaaS?什么是PaaS?什么是SaaS?他们又有什么分别?其实,云计算发展到今天,这些当年看似新颖的概念,已经快烂大街了,从业者早就对这些概念习以为常,但是圈外人却依然是丈二和尚摸不着头脑。今天我就来为圈外人士来解答一下,什么是IaaS,什么是PaaS,什么是SaaS。
先来说说这三个缩写,分别是Infrastructure As a Service, Platform As a Service, and Software as a Service,翻译过来就是基础设施即服务、平台即服务、软件即服务。IT圈的人历来喜欢造概念,这种东西翻译出来,别说圈外人,就是从业者突然接触也会被逼疯。简单地说,这三个缩写指的就是提供什么样的服务,是提供基础设施,还是提供平台,还是提供软件。
为了让大家更好地理解,我先举一个例子:比如说,你是一个创业者,现在要做一个共享单车APP(千万别做,因为这一行业已经一片红海,饱和的不要不要的),单从这款APP本身来说,你该从何入手呢?简单分成三步:
1. 第一步,找一个机房,或者把自己的办公室当成机房也可以,买机架,买几台服务器,放在机房的机架上面,连网,上电,保证通风散热,给服务器装上操作系统;
2. 第二步,在服务器上面装上各类runtime,中间件,数据库等等
3. 第三步,开发这款APP的前端与后台,测试,上线,再迭代,再更新……
怎么样?看起来是不是很简单?其实过程一点都不简单,尤其是第三步软件开发这一步,大家从媒体上看到的整个互联网圈儿的996福报的根本原因就在于软件开发这个环节,软件需要不停的迭代,程序员们就需要不停的写着代码;软件需要快速迭代,程序员们就需要996、007改着代码。
那么,话说回来,创个业也太难了,从机房、到机房设备、到网络、到通风散热,再到买服务器,再到搭环境,最后到软件开发,软件开发过程中又需要组建团队,涉及到人员管理,工资,社保样样都不能少。这样一通下来,创业者不死也得被扒层皮。
于是乎,有人就在想,这个过程能不能简单点呢?当然可以简单点,全外包啊,你只出钱就行了,有钱能使鬼推磨,只要钱到位,啥姿势我都会……然而,这是不行的,外包这个行业,说白了是劳动密集型产业,业务模式一点都不性感。
那还有什么方法呢?其他聪明的创业者已经想到了,把APP搭建起来的这个过程,有很多是可以做成标准化服务的。比如上面的第一步,机房和服务器等设备,这种采购的活,费时费力,还容易出现各种猫腻,莫不如把它标准化了,然后直接提供一个远程连接方式,搞定。
这样,IaaS应运而生。海外的AWS,国内的阿里云都是IaaS公有云方面的巨头,所谓的Infrastructure as a Service,所谓的基础设施,就是这种东西。创业者如果想要开发个什么东西,只需要在公有云平台上注册一个账号,再花点钱,就什么都有了,各种配置的云服务器,各种大小的存储,各种带宽的网络,你要啥有啥,而且,都不用你操心诸如机房选址、设备采购、实体服务器、存储、网络,统统的不用操心,只需要一个账号,便解决了。你只需要专心的完成上面的第二步和第三步就行了。
如果,有一些创业者觉得,还是太麻烦,还想再简单点,别着急,PaaS来也,Platform as a Service,平台即服务登场。将操作系统、数据库、运行时环境runtime、中间件、各种框架,全部给你弄得明明白白的,你自己的程序员只需要专心的开发自己的APP就行了。解释到这里,就有一些不好解释了,毕竟,中间件、框架、运行时环境这种让人挠头的词语还真是不太方便直观的举例,反正你就理解成在程序员开发程序之前,需要做的一些准备工作就好了。这类准备工作有很多是可以标准化的,拿来直接用,省时省力,在时间就是金钱效率就是生命的互联网圈,能够提升效率的东西都是好东西。
说到这里,其实,已经差不多了,能标准化的服务都已经标准化了,剩下的工作只有程序员的开发工作了。这时,创业团队里的COO拍案而起,说:不行,咱们自己的开发团队开发进度太慢了,这边的营销方案马上就要实施了,咱的APP还没有上线呢,过了这村儿就没这店儿了,别的我不管,我只要咱的APP跟我的大规划广告轰炸配套推出!
哈哈,COO,别上火,别急,SaaS,Software as a Service来感受一下。所谓的SaaS,就是连开发工作都给你做好,你这回可真是啥啥都不用干了,专注在自己的业务上就行了,别的事情都交给SaaS厂商就行了。什么软件开发,什么APP开发,什么团队管理,什么社保公积金,统统不要,还是只需要一个账号,全都解决,记得每年往里续费就行。
以上,就是IaaS, PaaS, SaaS的举例解释。从这里也能看出来,无非就是供应商所提供的服务到哪一层,跟我们平时在衣食住行上的体验是一样一样的。比如住,也分为自己盖房子、买个毛坯房然后自己装修、买个精装然后自己买家具、和直接住酒店这四种,分别对应IT领域的自建一套系统、IaaS, PaaS, SaaS。比如说,自己想吃顿饺子,也分为完完全全自己包顿饺子、买好饺子皮再包饺子、点外卖然后自己准备桌椅板凳酱油和醋吃饺子、直接去饭店吃饺子,也是分别对应IT领域的自建一套系统、IaaS, PaaS, SaaS。
网上还有一个关于做披萨的图,来帮助咱们理解IaaS, PaaS, SaaS,如下所示:
IaaS、PaaS、SaaS都是云服务
从这张图,也能更明显地感受到,IaaS, PaaS, SaaS之间的区别和联系。
顺便说一句,在很久很久以前,那个IT互联网刚刚萌发的年代,就是想发一封邮件,也得自己搭建邮件服务,进而才能在有网的前提下发送和接收邮件。而今天,我们只需要在126或者谷歌上注册一个自己的邮箱,就可以随意发邮件了。
整个人类社会都是如此,向着分工越来越细的方向来发展。而每一次的分工所带来的结果,就是有人能提供更细分的服务,更细分的服务意味着更进一步的加工与内部无法被看到的黑盒。IT如此,互联网如此,人类社会的发展亦是如此。