雲端架構 中階
Serverless 架構的優缺點是什麼?何時應該選擇 Serverless?
Serverless 是什麼
Serverless 並非沒有伺服器,而是開發者無需管理伺服器。雲端供應商負責基礎設施的配置、擴展和維護,你只需上傳程式碼。
代表服務:AWS Lambda、Google Cloud Functions、Azure Functions
優點
零運維負擔:無需管理 OS、patching、容量規劃
自動擴展:從零到數千個並發執行,無需配置
按執行付費:閒置時零費用(vs 長時間運行的 EC2)
快速迭代:部署單個函數,無需管理整個應用
缺點
冷啟動 (Cold Start):函數閒置後首次執行有延遲(通常 100ms-2s)
- 解決方案:Provisioned Concurrency(預熱實例)、定時觸發保持暖機
執行時間限制:AWS Lambda 最長 15 分鐘,不適合長時間任務
本地開發困難:與雲端環境的差異使除錯複雜
Vendor Lock-in:深度依賴雲端廠商的服務和觸發器
觀測性挑戰:分散的函數使分散式追蹤更複雜
適合使用 Serverless 的場景
- 事件驅動的資料處理(S3 上傳觸發圖片縮圖生成)
- API 後端(流量不穩定、有明顯波峰)
- 排程任務(Cron jobs)
- Webhook 處理器
不適合的場景
- 低延遲要求的應用(冷啟動不可接受)
- 長時間運行的任務
- 高吞吐量、持續負載(EC2/容器更划算)
✦ AI 模擬面試
輸入你的答案,AI 即時分析精準度與改進空間
登入後即可使用 AI 評分
