這三者的關係並不是平行的三個選項,而是一個 「層層遞進」 的關係。你可以把它想像成一個 洋蔥 或是 同心圓:
- 最外層是 託管服務 (Managed)。
- 中間層是 全託管服務 (Fully Managed)。
- 最核心是 無伺服器服務 (Serverless)。
所有的 Serverless 都是全託管;所有的全託管都是託管。但反之不成立。
1. 三者核心定義與差異
我們用 「你要管多少事?」 以及 「你看得到伺服器嗎?」 來區分:
A. 託管服務 (Managed Services)
- 定義:AWS 幫你管理底層硬體、OS 和軟體修補,但你要負責「容量規劃」。
- 關鍵特徵:👀 看得到機器:你需要選擇 Instance Type (如 m5.large)。🧠 你要動腦:你要決定開幾台?硬碟要多大?💰 閒置收費:即使半夜沒人用,只要機器開著就要付錢。
- 代表服務:Amazon RDS, Amazon EMR, Amazon ElastiCache。
B. 全託管服務 (Fully Managed Services)
- 定義:AWS 抽象化了所有基礎設施,你完全看不到機器,也不用管 Patch。你只需關注「使用服務」。
- 關鍵特徵:🙈 看不到機器:沒有 Instance Type 的選項。📈 自動擴展:通常具備自動伸縮能力,你不用手動調整。🛡️ 高可用性:預設就跨多個 AZ,不用你去設定。
- 代表服務:Amazon S3, Amazon DynamoDB, Amazon Kinesis, SQS, SNS。(註:DynamoDB 雖然是全託管,但如果你選 Provisioned 模式,你還是要付固定容量的錢,所以它不一定是 Serverless)。
C. 無伺服器服務 (Serverless)
- 定義:這是全託管的「極致版」。除了看不到機器外,它強調 「極致的彈性」 與 「按用量計費」。
- 關鍵特徵:0️⃣ 縮減到零 (Scale to Zero):沒流量時,資源會完全釋放,費用為 0。⚡ 事件驅動 (Event-driven):有請求進來才啟動。💸 按次/按秒計費:真正的 Pay-as-you-go。
- 代表服務:AWS Lambda, AWS Fargate, Amazon Aurora Serverless, Amazon S3 (標準層)。
2. 綜合比較表 (The Matrix)

3. 常見的混淆案例 (實務解析)
案例 1:RDS vs. Aurora Serverless
- Amazon RDS 是 託管服務。你要選機器大小,機器開著就要付錢。
- Amazon Aurora Serverless 是 無伺服器服務。你不用選機器,它會根據 CPU 負載自動變大變小 (ACU),沒人連線時甚至可以自動暫停 (Pause)。
案例 2:DynamoDB 的兩種模式
- Provisioned Mode (預配置):屬於 全託管。你設定「我要每秒讀寫 100 次的能力」。AWS 會保留這個能力給你,就算沒人來查,你也要付這 100 次的錢。
- On-Demand Mode (隨需):屬於 無伺服器。你不用設定能力上限。來一次讀寫算一次錢,沒人來就不用錢。
案例 3:Fargate
- Fargate 本身是 Serverless 運算引擎。
- 但如果你用 Fargate 跑一個 24 小時不關的 Web Server,雖然你是用 Serverless 技術,但你的帳單行為其實很像託管服務(因為一直跑就要一直付錢)。
- 所以 Serverless 的「省錢優勢」通常體現在**「有波動的流量」或「短暫的任務」**上。
4. 考試與選型指南
- 選「託管 (Managed)」:當你有穩定的負載,且需要特定資料庫參數調校,或者為了省錢買 Savings Plans (長期運轉比 Serverless 便宜)。
- 選「全託管 (Fully Managed)」:當你不希望團隊花任何時間在 Patch OS 或升級版本上。
- 選「無伺服器 (Serverless)」:當你的應用程式是事件驅動的(如有人上傳照片才處裡),或者流量忽大忽小難以預測,且希望閒置時不付費。

















