【AWS】Day 5:IaaS、PaaS、FaaS、SaaS 的差別
在進入 AWS 各項運算服務前,我們先來搞懂幾個在雲端世界中常見的術語:
IaaS、PaaS、FaaS、SaaS。
這些都是「服務模型(Service Model)」的分類,代表你在使用雲端時,需要負責的事情有多少、而雲端服務商(像 AWS)又幫你負責了多少。
雲端服務模型的基本觀念
以下這張表可以幫助你快速了解四種模型的差別:
管理對象/模型 | 自架主機 | IaaS | PaaS | FaaS | SaaS |
---|---|---|---|---|---|
硬體設備 | ✅ 自己買 | ❌ AWS 提供 | ❌ AWS 提供 | ❌ AWS 提供 | ❌ AWS 提供 |
作業系統 | ✅ 自己裝 | ✅ 自己裝/管理 | ❌ AWS 管理 | ❌ AWS 管理 | ❌ AWS 管理 |
中介軟體(DB、Runtime) | ✅ 自建 | ✅ 自建 | ❌ AWS 幫你配好 | ❌ AWS 幫你配好 | ❌ AWS 幫你配好 |
應用程式邏輯 | ✅ 自己寫 | ✅ 自己寫 | ✅ 自己寫 | ✅ 自己寫 | ❌ 你不需要寫 |
維運、監控 | ✅ 全部自己 | ✅ 自己負責 | ⚠️ 半自動 | ❌ AWS 自動處理 | ❌ AWS 處理 |
各種服務模型的說明與範例
1️⃣ IaaS:Infrastructure as a Service(基礎設施即服務)
-
你租用虛擬機與網路,但其他都自己來
-
最大彈性、也最麻煩,需要自己維運
-
常見服務:Amazon EC2、VPC、EBS、ELB
適合對象:
-
有自己建系統的需求
-
對運維有經驗、需高度自訂環境
-
例:自行部署 Apache + PHP + MySQL 的網站架構
2️⃣ PaaS:Platform as a Service(平台即服務)
-
AWS 幫你準備好 OS、環境、runtime,只要上傳應用程式即可
-
不用管架設,但彈性較小
-
常見服務:Elastic Beanstalk、App Runner
適合對象:
-
想快速上線服務,不想煩基礎建設細節
-
MVP、新創、團隊快速開發部署階段
3️⃣ FaaS:Function as a Service(函數即服務)
-
只負責一段段程式碼(function),不需要啟動伺服器
-
事件觸發執行、自動擴展、極度省錢
-
常見服務:AWS Lambda
適合對象:
-
事件驅動架構、簡單自動任務(如圖片轉換、排程任務)
-
想實作 Serverless 架構
4️⃣ SaaS:Software as a Service(軟體即服務)
-
使用者什麼都不用管,只要「使用」就好
-
全部由供應商管理、維運、升級
-
常見服務:Amazon WorkMail、QuickSight、Google Workspace、Slack、Notion、Zoom
適合對象:
-
只想「用服務」,不想管任何底層系統
-
想要穩定、成熟的產品解決問題
AWS 各服務分類對照表
模型 | AWS 常見服務 |
---|---|
IaaS | EC2、EBS、VPC、ELB |
PaaS | Elastic Beanstalk、App Runner |
FaaS | AWS Lambda、Step Functions |
SaaS | WorkMail、QuickSight、Chime、Honeycode |
小結
透過這篇文章,我們理解了 IaaS、PaaS、FaaS、SaaS 的差異,並知道:
-
不同模型代表「管理責任」的差異
-
彈性 vs 管理負擔 是互相拉扯的
-
在 AWS 裡幾乎各種模型的服務都有對應可選
下一篇開始,我們就會進入實際的運算服務操作介紹 —— 先從最核心、最經典的 EC2(Elastic Compute Cloud)虛擬機服務) 開始探索!
我們 Day 6 再見~