1. 運算 (Compute) - 核心服務
這是最直觀的「執行程式碼」的地方:
- AWS Lambda:Serverless 的代名詞。你上傳程式碼(Python, Node.js, Go 等),觸發事件後執行,執行完就釋放資源。
- AWS Fargate:這是容器 (Container) 的無伺服器引擎。你不需要管 EC2 節點,直接把 Docker 容器丟上去跑(可搭配 ECS 或 EKS)。
- AWS App Runner:比 Fargate 更簡單,直接連線你的程式碼儲存庫 (GitHub) 或容器映像檔,它會自動部署並生成 URL,適合網頁應用 API。
2. 資料庫 (Databases)
這些資料庫會根據流量自動擴大或縮小容量:
- Amazon DynamoDB:AWS 最強大的 NoSQL 資料庫,預設就是 Serverless,極高效能。
- Amazon Aurora Serverless (v2):關聯式資料庫 (MySQL/PostgreSQL 相容)。當沒人連線時可以縮減到很小,流量大時瞬間變大。
- Amazon ElastiCache Serverless:Redis 和 Memcached 的快取服務,不用再自己選節點大小。
- Amazon MemoryDB for Redis:持久性的 Redis 資料庫,也是無伺服器的。
- Amazon Timestream:針對時間序列資料(IoT、監控數據)。
- Amazon Keyspaces:Apache Cassandra 相容的無伺服器資料庫。
- Amazon Neptune Serverless:圖形資料庫 (Graph DB)。
3. 應用程式整合 (Application Integration)
這是在微服務架構中,負責把不同服務「黏」在一起的膠水:- Amazon API Gateway:管理的 API 入口,負責接收 HTTP 請求並轉發給 Lambda 或其他後端。
- Amazon SQS (Simple Queue Service):訊息佇列,用來緩衝流量,解耦微服務。
- Amazon SNS (Simple Notification Service):發送通知(Email, SMS, Push)或發送訊息給 SQS/Lambda。
- Amazon EventBridge:無伺服器的事件匯流排 (Event Bus),負責在不同服務間傳遞事件(例如:S3 上傳了檔案 -> 觸發某個動作)。
- AWS Step Functions:工作流程協調器。用視覺化的方式把 Lambda、Glue 等服務串成一個有順序的工作流 (Workflow)。
- AWS AppSync:用於 GraphQL API 的無伺服器後端。
4. 儲存 (Storage)
雖然我們常忽略,但這些儲存服務本質上就是無伺服器的(你不用管硬碟):
- Amazon S3:物件儲存。無限容量,自動擴展。
- Amazon EFS (Elastic File System):Linux 的共用檔案系統 (NFS),容量自動增減。
5. 數據分析與大數據 (Analytics)
以往大數據需要開一堆機器跑 Hadoop,現在可以用無伺服器取代:
- Amazon Athena:直接用 SQL 語法去查詢放在 S3 裡的檔案 (CSV, JSON, Parquet),不用開資料庫。
- AWS Glue:無伺服器的 ETL (資料萃取、轉換、載入) 服務,用來整理資料。
- Amazon Redshift Serverless:雲端資料倉儲 (Data Warehouse),不用預先開 Cluster 就能跑複雜分析。
- Amazon Kinesis Data Streams (On-demand):即時串流數據處理。
- Amazon MSK Serverless:Apache Kafka 的無伺服器版本。
- Amazon OpenSearch Serverless:用於搜尋引擎和日誌分析 (ELK Stack)。
6. 人工智慧 (AI / ML)
AWS 的 AI 服務幾乎都是透過 API 呼叫,無需管理伺服器:
- Amazon Bedrock:透過 API 使用生成式 AI 模型 (Claude, Titan 等)。
- Amazon Rekognition (影像辨識)、Amazon Polly (轉語音)、Amazon Translate (翻譯) 等。
總結:最常用的「無伺服器全餐」組合
如果你要構建一個現代化的 Serverless Web 應用程式,通常會用到這一組:
- 前端:放在 S3 + CloudFront。
- API 入口:API Gateway。
- 邏輯運算:Lambda。
- 資料庫:DynamoDB。
- 異步處理:SQS 或 EventBridge。
這就是所謂的 "Serverless-First" 策略。













