導讀:基礎(chǔ)科普篇。
最近有朋友問我,什么是IaaS?什么是PaaS?什么是SaaS?他們又有什么分別?其實,云計算發(fā)展到今天,這些當年看似新穎的概念,已經(jīng)快爛大街了,從業(yè)者早就對這些概念習以為常,但是圈外人卻依然是丈二和尚摸不著頭腦。今天我就來為圈外人士來解答一下,什么是IaaS,什么是PaaS,什么是SaaS。
先來說說這三個縮寫,分別是Infrastructure As a Service, Platform As a Service, and Software as a Service,翻譯過來就是基礎(chǔ)設施即服務、平臺即服務、軟件即服務。IT圈的人歷來喜歡造概念,這種東西翻譯出來,別說圈外人,就是從業(yè)者突然接觸也會被逼瘋。簡單地說,這三個縮寫指的就是提供什么樣的服務,是提供基礎(chǔ)設施,還是提供平臺,還是提供軟件。
為了讓大家更好地理解,我先舉一個例子:比如說,你是一個創(chuàng)業(yè)者,現(xiàn)在要做一個共享單車APP(千萬別做,因為這一行業(yè)已經(jīng)一片紅海,飽和的不要不要的),單從這款APP本身來說,你該從何入手呢?簡單分成三步:
1. 第一步,找一個機房,或者把自己的辦公室當成機房也可以,買機架,買幾臺服務器,放在機房的機架上面,連網(wǎng),上電,保證通風散熱,給服務器裝上操作系統(tǒng);
2. 第二步,在服務器上面裝上各類runtime,中間件,數(shù)據(jù)庫等等
3. 第三步,開發(fā)這款APP的前端與后臺,測試,上線,再迭代,再更新……
怎么樣?看起來是不是很簡單?其實過程一點都不簡單,尤其是第三步軟件開發(fā)這一步,大家從媒體上看到的整個互聯(lián)網(wǎng)圈兒的996福報的根本原因就在于軟件開發(fā)這個環(huán)節(jié),軟件需要不停的迭代,程序員們就需要不停的寫著代碼;軟件需要快速迭代,程序員們就需要996、007改著代碼。
那么,話說回來,創(chuàng)個業(yè)也太難了,從機房、到機房設備、到網(wǎng)絡、到通風散熱,再到買服務器,再到搭環(huán)境,最后到軟件開發(fā),軟件開發(fā)過程中又需要組建團隊,涉及到人員管理,工資,社保樣樣都不能少。這樣一通下來,創(chuàng)業(yè)者不死也得被扒層皮。
于是乎,有人就在想,這個過程能不能簡單點呢?當然可以簡單點,全外包啊,你只出錢就行了,有錢能使鬼推磨,只要錢到位,啥姿勢我都會……然而,這是不行的,外包這個行業(yè),說白了是勞動密集型產(chǎn)業(yè),業(yè)務模式一點都不性感。
那還有什么方法呢?其他聰明的創(chuàng)業(yè)者已經(jīng)想到了,把APP搭建起來的這個過程,有很多是可以做成標準化服務的。比如上面的第一步,機房和服務器等設備,這種采購的活,費時費力,還容易出現(xiàn)各種貓膩,莫不如把它標準化了,然后直接提供一個遠程連接方式,搞定。
這樣,IaaS應運而生。海外的AWS,國內(nèi)的阿里云都是IaaS公有云方面的巨頭,所謂的Infrastructure as a Service,所謂的基礎(chǔ)設施,就是這種東西。創(chuàng)業(yè)者如果想要開發(fā)個什么東西,只需要在公有云平臺上注冊一個賬號,再花點錢,就什么都有了,各種配置的云服務器,各種大小的存儲,各種帶寬的網(wǎng)絡,你要啥有啥,而且,都不用你操心諸如機房選址、設備采購、實體服務器、存儲、網(wǎng)絡,統(tǒng)統(tǒng)的不用操心,只需要一個賬號,便解決了。你只需要專心的完成上面的第二步和第三步就行了。
如果,有一些創(chuàng)業(yè)者覺得,還是太麻煩,還想再簡單點,別著急,PaaS來也,Platform as a Service,平臺即服務登場。將操作系統(tǒng)、數(shù)據(jù)庫、運行時環(huán)境runtime、中間件、各種框架,全部給你弄得明明白白的,你自己的程序員只需要專心的開發(fā)自己的APP就行了。解釋到這里,就有一些不好解釋了,畢竟,中間件、框架、運行時環(huán)境這種讓人撓頭的詞語還真是不太方便直觀的舉例,反正你就理解成在程序員開發(fā)程序之前,需要做的一些準備工作就好了。這類準備工作有很多是可以標準化的,拿來直接用,省時省力,在時間就是金錢效率就是生命的互聯(lián)網(wǎng)圈,能夠提升效率的東西都是好東西。
說到這里,其實,已經(jīng)差不多了,能標準化的服務都已經(jīng)標準化了,剩下的工作只有程序員的開發(fā)工作了。這時,創(chuàng)業(yè)團隊里的COO拍案而起,說:不行,咱們自己的開發(fā)團隊開發(fā)進度太慢了,這邊的營銷方案馬上就要實施了,咱的APP還沒有上線呢,過了這村兒就沒這店兒了,別的我不管,我只要咱的APP跟我的大規(guī)劃廣告轟炸配套推出!
哈哈,COO,別上火,別急,SaaS,Software as a Service來感受一下。所謂的SaaS,就是連開發(fā)工作都給你做好,你這回可真是啥啥都不用干了,專注在自己的業(yè)務上就行了,別的事情都交給SaaS廠商就行了。什么軟件開發(fā),什么APP開發(fā),什么團隊管理,什么社保公積金,統(tǒng)統(tǒng)不要,還是只需要一個賬號,全都解決,記得每年往里續(xù)費就行。
以上,就是IaaS, PaaS, SaaS的舉例解釋。從這里也能看出來,無非就是供應商所提供的服務到哪一層,跟我們平時在衣食住行上的體驗是一樣一樣的。比如住,也分為自己蓋房子、買個毛坯房然后自己裝修、買個精裝然后自己買家具、和直接住酒店這四種,分別對應IT領(lǐng)域的自建一套系統(tǒng)、IaaS, PaaS, SaaS。比如說,自己想吃頓餃子,也分為完完全全自己包頓餃子、買好餃子皮再包餃子、點外賣然后自己準備桌椅板凳醬油和醋吃餃子、直接去飯店吃餃子,也是分別對應IT領(lǐng)域的自建一套系統(tǒng)、IaaS, PaaS, SaaS。
網(wǎng)上還有一個關(guān)于做披薩的圖,來幫助咱們理解IaaS, PaaS, SaaS,如下所示:
IaaS、PaaS、SaaS都是云服務
從這張圖,也能更明顯地感受到,IaaS, PaaS, SaaS之間的區(qū)別和聯(lián)系。
順便說一句,在很久很久以前,那個IT互聯(lián)網(wǎng)剛剛萌發(fā)的年代,就是想發(fā)一封郵件,也得自己搭建郵件服務,進而才能在有網(wǎng)的前提下發(fā)送和接收郵件。而今天,我們只需要在126或者谷歌上注冊一個自己的郵箱,就可以隨意發(fā)郵件了。
整個人類社會都是如此,向著分工越來越細的方向來發(fā)展。而每一次的分工所帶來的結(jié)果,就是有人能提供更細分的服務,更細分的服務意味著更進一步的加工與內(nèi)部無法被看到的黑盒。IT如此,互聯(lián)網(wǎng)如此,人類社會的發(fā)展亦是如此。