⚡ Serverless 架構實戰

Vibe Prompt

「幫我用 AWS Lambda + API Gateway 建立一個 CRUD API,資料存 DynamoDB,用 Python 實作。」

你會學到

  • ✅ 函數即服務 (FaaS)
  • ✅ AWS Lambda 實戰
  • ✅ API Gateway 路由
  • ✅ DynamoDB 與索引
  • ✅ Serverless 最佳化(冷啟動、記憶體)

課程總覽:五個章節的學習路徑

這堂課從零開始,一步一步建立完整的 Serverless 應用。以下是每個章節的學習重點:

第一章:AWS Lambda 函式

為什麼先學 Lambda? Lambda 是 Serverless 的核心。你不需要管伺服器,只要寫程式、上傳、設觸發器,剩下的擴展和維護都由 AWS 處理。

你會學到:

  • Lambda 執行模型(冷啟動、並發、Timeout)
  • API Gateway + Lambda 建立 REST API
  • S3 事件觸發 Lambda
  • IAM 權限最小化原則
  • CDK/Terraform 部署自動化

第二章:DynamoDB 與資料模型

為什麼要學 NoSQL 資料建模? Serverless 世界裡 DynamoDB 是標準的資料儲存層。它沒有 JOIN、沒有自動遞增 ID——這些「限制」是刻意設計的,目的是逼迫你用存取模式主導設計。

你會學到:

  • Partition Key / Sort Key 設計
  • Single Table Design
  • GSI / LSI 使用時機
  • Hot Partition 排查
  • RCU/WCU 成本估算

第三章:DynamoDB 與 EventBridge

為什麼需要事件驅動? 當系統跨越多個服務時,同步呼叫會產生耦合。EventBridge 讓服務之間透過事件非同步溝通——訂單服務發送「OrderCreated」事件,Email 服務、出貨服務各自訂閱處理。

你會學到:

  • DynamoDB Streams 自動捕獲資料變更
  • EventBridge Content Filtering
  • 事件驅動架構的鬆散耦合設計

第四章:Step Functions

為什麼要用工作流程引擎? 簡單的「觸發→回應」用 Lambda 就夠了。但當流程需要多個步驟、條件判斷、重試邏輯、人工審核時,Step Functions 的 JSON 定義和視覺化除錯就無可取代。

你會學到:

  • Task / Choice / Parallel / Map 狀態
  • Retry 指數退避 + Catch 錯誤處理
  • Callback with Task Token(等待外部批准)
  • 與 Lambda、DynamoDB、SNS 整合

第五章:完整無伺服器應用

為什麼要學整合? 前面四章教的是個別服務,這一章把它們全部組合在一起——從 Cognito 認證、API Gateway 路由、DynamoDB 儲存、S3 檔案上傳到 Step Functions 工作流程。

你會學到:

  • 完整的 SaaS 系統架構
  • 基礎設施即程式碼(Terraform/CDK)
  • 監控與可觀測性(CloudWatch + X-Ray)
  • 每月費用估算(1 萬使用者約 $10-20)