誰是開發(fā)者的夢(mèng)中情人?PaaS與IaaS之爭(zhēng) 推薦者:怕冷的南瓜 (積分 27914) | 原作者:吳朱華 2 頂一下
收藏
前言
云計(jì)算主要有SaaS,,PaaS和IaaS這三種服務(wù)模式,。對(duì)普通用戶而言,他們主要面對(duì)的是SaaS這種服務(wù)模式,,但是對(duì)普通的開發(fā)者而言,云計(jì)算對(duì)他們而言,,卻有兩種服務(wù)模式可供選擇,,PaaS和IaaS,而且這兩種模式有很多的不同,,而且它們之間還存在一定程度的競(jìng)爭(zhēng),接下來將首先對(duì)這兩種模式進(jìn)行比較,,之后將預(yù)測(cè)一下它們的未來,,也就是那種模式將會(huì)更受到開發(fā)者的親密。 比較 大家應(yīng)該知道,,PaaS的主要作用是將一個(gè)開發(fā)和運(yùn)行平臺(tái)作為服務(wù)提供給用戶,,而IaaS的主要作用是提供虛擬機(jī)或者其他資源作為服務(wù)提供給用戶,。下面將在七個(gè)方面對(duì)PaaS和IaaS兩者進(jìn)行比較: 開發(fā)環(huán)境 PaaS基本都會(huì)給開發(fā)者提供一整套包括IDE在內(nèi)的開發(fā)和測(cè)試環(huán)境,而在IaaS方面用戶主要還是沿用之前那套開發(fā)環(huán)境,,雖然比較熟悉,,但是因?yàn)橹澳翘组_發(fā)環(huán)境在與云的整合方面比較欠缺,所以有時(shí)候會(huì)很不方便,,比如通過PaaS提供的工具部署一個(gè)應(yīng)用到云上,可能只需幾下鼠標(biāo)點(diǎn)擊和十多秒即可完成,,而在IaaS平臺(tái)上部署應(yīng)用,,相對(duì)而言比較復(fù)雜,,特別是在剛開始使用的時(shí)候。 支持的應(yīng)用 因?yàn)镮aaS主要是提供虛擬機(jī),,而且普通的虛擬機(jī)能支持多種基于X86架構(gòu)的操作系統(tǒng),包括Linux,、OpenBSD和Windows等,,所以IaaS支持的應(yīng)用的范圍是非常廣泛的。但如果要讓一個(gè)應(yīng)用能跑在某個(gè)PaaS平臺(tái)不是一件輕松的事,,因?yàn)椴粌H需要確保這個(gè)應(yīng)用是基于這個(gè)平臺(tái)所支持的語言,,而且也要確保這個(gè)應(yīng)用只能調(diào)用這個(gè)平臺(tái)所支持的API,,如果這個(gè)應(yīng)用調(diào)用了平臺(tái)所不支持的API,那么就需要在部署之前,,對(duì)這個(gè)應(yīng)用進(jìn)行修改,。 開放標(biāo)準(zhǔn) 雖然很多IaaS平臺(tái)都存在一定的私有功能,但是由于OVF等協(xié)議的存在,,使得IaaS在跨平臺(tái)和避免被供應(yīng)商鎖定這兩面是穩(wěn)步前進(jìn)的。而PaaS平臺(tái)的情況則不容樂觀,,因?yàn)椴徽撌荊oogle的App Engine,,還是Salesforce的Force.com都存在一定的私有API。 可伸縮性 PaaS平臺(tái)會(huì)自動(dòng)調(diào)整資源來幫助運(yùn)行于其上的應(yīng)用更好地應(yīng)對(duì)突發(fā)流量,。而IaaS平臺(tái)則常需要開發(fā)人員手動(dòng)對(duì)資源進(jìn)行調(diào)整才能應(yīng)對(duì),。 整合率和經(jīng)濟(jì)性 PaaS平臺(tái)整合率是非常高,,比如PaaS的代表Google App Engine能在一臺(tái)服務(wù)器上承載成千上萬的應(yīng)用,而普通的IaaS平臺(tái)的整合率最多也不會(huì)超過100,,而且普遍在10左右,,使得IaaS的經(jīng)濟(jì)性不如PaaS。 計(jì)費(fèi)和監(jiān)管 因?yàn)镻aaS平臺(tái)在計(jì)費(fèi)和監(jiān)管這兩方面不僅達(dá)到了IaaS平臺(tái)所能企及的操作系統(tǒng)層面,,比如,,CPU和內(nèi)存的使用量等,,而且還能做到應(yīng)用層面,比如,,應(yīng)用的反應(yīng)時(shí)間(Response Time)或者應(yīng)用調(diào)用某個(gè)服務(wù)的次數(shù)等,,這將提高計(jì)費(fèi)和管理的精確性,。 學(xué)習(xí)難度 對(duì)于那些熟悉類UNIX系統(tǒng)的程序員而言,能很快學(xué)習(xí)在IaaS的開發(fā)和管理應(yīng)用的方式,,雖然現(xiàn)在IaaS產(chǎn)品普遍對(duì)Windows開發(fā)環(huán)境沒有很好的支持,而如果要學(xué)會(huì)PaaS上面開發(fā)則有可能需要學(xué)一門新的語言或者新的框架,,所以IaaS學(xué)習(xí)難度更低,。 下面將通過一張表來總結(jié)一下上面的比較: 表1. PaaS和IaaS之間的比較 未來的競(jìng)爭(zhēng) 在當(dāng)今云計(jì)算環(huán)境當(dāng)中,IaaS是非常主流的,,無論是Amazon EC2還是Linode或者Joyent等,,都占有一席之地,但是隨著Google的App Engine,,Salesforce的Force.com還是微軟的Windows Azure等PaaS平臺(tái)的推出,,使得PaaS也開始嶄露頭角,。談到這兩者的未來,特別是這兩者之間的競(jìng)爭(zhēng)關(guān)系,,我個(gè)人認(rèn)為,,短期而言,因?yàn)镮aaS模式在支持的應(yīng)用和學(xué)習(xí)難度這兩方面的優(yōu)勢(shì),,使得IaaS將會(huì)在短期之內(nèi)會(huì)成為開發(fā)者的首選,,但是從長(zhǎng)期而言,如果PaaS能解決諸如通用性和支持的應(yīng)用等方面的挑戰(zhàn),,PaaS模式會(huì)因?yàn)槠涓哒下仕鶐斫?jīng)濟(jì)性從而替代IaaS成為開發(fā)者的“新寵”,。 來源:草根網(wǎng)(www.) - 互聯(lián)網(wǎng)界的讀者文摘
|
|