天天看點

iaas、paas、saas的雲計算服務模式簡介

什麼叫雲呢?

雲”其實是網際網路的一個隐喻,“雲計算”其實就是使用網際網路來接入存儲或者運作在遠端伺服器端的應用,資料,或者服務。

IaaS: Infrastructure-as-a-Service(基礎設施即服務)(提供基礎運作環境)

IaaS公司會提供場外伺服器,存儲和網絡硬體,你可以租用。節省了維護成本和辦公場地,公司可以在任何時候利用這些硬體來運作其應用。

一些大的IaaS公司包括Amazon, Microsoft, VMWare, Rackspace和Red Hat.不過這些公司又都有自己的專長,比如Amazon和微軟給你提供的不隻是IaaS,他們還會将其計算能力出租給你來host你的網站。

PaaS: Platform-as-a-Service(平台即服務)(提供運作環境,提供基礎服務子產品,核心應用還得自己寫)。

所謂的PaaS,某些時候也叫做中間件。你公司所有的開發都可以在這一層進行,節省了時間和資源。

PaaS公司在網上提供各種開發和分發應用的解決方案,比如虛拟伺服器和作業系統。這節省了你在硬體上的費用,也讓分散的工作室之間的合作變得更加容易。網頁應用管理,應用設計,應用虛拟主機,存儲,安全以及應用開發協作工具等。

一些大的PaaS提供者有Google App Engine,Microsoft Azure,Force.com,Heroku,Engine Yard。最近興起的公司有AppFog, Mendix 和 Standing Cloud,還有如華為雲和阿裡雲

SaaS: Software-as-a-Service(軟體即服務)(直接封裝好的可直接聯網運作的服務)

所謂SaaS層就是和你的生活每天接觸的一層,大多是通過網頁浏覽器來接入。任何一個遠端伺服器上的應用都可以通過網絡來運作,就是SaaS了。

如有道筆記和百度雲。

Iaas和Paas之間的比較

    PaaS的主要作用是将一個開發和運作平台作為服務提供給使用者,而IaaS的主要作用是提供虛拟機或者其他資源作為服務提供給使用者。接下來,将在七個方面對PaaS和IaaS進行比較:

    1) 開發環境:PaaS基本都會給開發者提供一整套包括IDE在内的開發和測試環境,而IaaS方面使用者主要還是沿用之前比較熟悉那套開發環境,但是因為之前那套開發環境在和雲的整合方面比較欠缺,是以使用起來不是很友善。

    2) 支援的應用:因為IaaS主要是提供虛拟機,而且普通的虛拟機能支援多種作業系統,是以IaaS支援的應用的範圍是非常廣泛的。但如果要讓一個應用能跑在 某個PaaS平台不是一件輕松的事,因為不僅需要確定這個應用是基于這個平台所支援的語言,而且也要確定這個應用隻能調用這個平台所支援的API,如果這 個應用調用了平台所不支援的API,那麼就需要對這個應用進行修改。

 3) 開放标準:雖然很多IaaS平台都存在一定的私有功能,但是由于OVF等協定的存在,使得IaaS在跨平台和避免被供應商鎖定這兩面是穩步前進的。而 PaaS平台的情況則不容樂觀,因為不論是Google的App Engine,還是Salesforce的Force.com都存在一定的私有API。

    4) 可伸縮性:PaaS平台會自動調整資源來幫助運作于其上的應用更好地應對突發流量。而IaaS平台則需要開發人員手動對資源進行調整才能應對。

    5) 整合率和經濟性: PaaS平台整合率是非常高,比如PaaS的代表Google App Engine能在一台伺服器上承載成千上萬的應用,而普通的IaaS平台的整合率最多也不會超過100,而且普遍在10左右,使得IaaS的經濟性不如PaaS。

    6) 計費和監管:因為PaaS平台在計費和監管這兩方面不僅達到了IaaS平台所能企及的作業系統層面,比如,CPU和記憶體的使用量等,而且還能做到應用層 面,比如,應用的反應時間(Response Time)或者應用所消耗的事務多少等,這将提高計費和管理的精确性。

    7) 學習難度:因為在IaaS上面開發和管理應用和現有的方式比較接近,而PaaS上面開發則有可能需要學一門新的語言或者新的架構,是以IaaS學習難度更低。

PaaS IaaS
開發環境 完善 普通
支援的應用 有限
通用性 欠缺 稍好
可伸縮性 自動伸縮 手動伸縮
整合率和經濟性 高整合率,更經濟 低整合率
計費和監管 精細 簡單
學習難度 略難

表1. PaaS和IaaS之間的比較

未來的PK

    在當今雲計算環境當中,IaaS是非常主流的,無論是Amazon EC2還是Linode或者Joyent等,都占有一席之地,但是随着Google的App Engine,Salesforce的Force.com還是微軟的Windows Azure等PaaS平台的推出,使得PaaS也開始嶄露頭角。談到這兩者的未來,特别是這兩者之間的競争關系,我個人認為,短期而言,因為IaaS模式 在支援的應用和學習難度這兩方面的優勢,使得IaaS将會在短期之内會成為開發者的首選,但是從長期而言,因為PaaS模式的高整合率所帶來經濟型使得如 果PaaS能解決諸如通用性和支援的應用等方面的挑戰,它将會替代IaaS成為開發者的“新寵”。

PaaS公司去做IaaS比較難,但可以利用自己在某些方面的技術優勢向SaaS領域發展,這樣更靠近使用者之後,不但豐富了自己的産品線,也提升了自己的盈利能力。

雲計算售賣的是一種服務而不是虛拟化後的标準硬體産品。

繼續閱讀