雲服務中IaaS、PaaS、SaaS的區別


越來越多的軟件,開始采用雲服務。

雲服務只是一個統稱,可以分成三大類。

  • IaaS:基礎設施服務,Infrastructure-as-a-service
  • PaaS:平台服務,Platform-as-a-service
  • SaaS:軟件服務,Software-as-a-service

它們有什么區別呢?

IBM 的軟件架構師 Albert Barron 曾經使用披薩作為比喻,解釋這個問題。David Ng 進一步引申,讓它變得更准確易懂。

請設想你是一個餐飲業者,打算做披薩生意。

你可以從頭到尾,自己生產披薩,但是這樣比較麻煩,需要准備的東西多,因此你決定外包一部分工作,采用他人的服務。你有三個方案。

(1)方案一:IaaS

他人提供廚房、爐子、煤氣,你使用這些基礎設施,來烤你的披薩。

(2)方案二:PaaS

除了基礎設施,他人還提供披薩餅皮。

你只要把自己的配料灑在餅皮上,讓他幫你烤出來就行了。也就是說,你要做的就是設計披薩的味道(海鮮披薩或者雞肉披薩),他人提供平台服務,讓你把自己的設計實現。

(3)方案三:SaaS

他人直接做好了披薩,不用你的介入,到手的就是一個成品。你要做的就是把它賣出去,最多再包裝一下,印上你自己的 Logo。

上面的三種方案,可以總結成下面這張圖。

從左到右,自己承擔的工作量(上圖藍色部分)越來越少,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?

  阿里雲應是屬於IaaS,而新浪雲、百度雲與百度開放雲平台則屬於PaaS。

  IaaS其實提供的就是服務器,用戶可以自行在服務器安裝配置各種軟件環境。可以很靈活的實現各種功能。

  PaaS目前主要是WEB環境的應用,通常支持PHP、Java、Python和GO語言。必須在雲計算服務商的框架內開發。

  IaaS需要自己搭建程序運行環境,優勢是靈活,缺點就是需要自己配置

  PaaS不需要自己做環境配置,缺點是必須使用指定的開發語言,遵循平台的開發規范。

  如果開發的應用不是用PHP、Java、Python語言。建議使用阿里雲的服務。如果是上述語言的WEB服務,可以考慮使用新浪雲、百度雲等。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM