設定 AWS Lambda 的生產環境
在 AWS 上部署應用程式
Dunieski Otano
Amazon Web Services Solutions Architect
測試環境可行
函式通過所有測試
上線後逾時並被節流
程式碼沒問題,設定才是關鍵
生產環境關鍵的 Lambda 設定
Memory
:同時按比例提升 CPU 與網路
Timeout
:達到秒數上限就終止函式
Ephemeral storage
:/tmp 的暫存空間
Concurrency
:同時可執行的數量
記憶體規模與 CPU 的關聯
記憶體越多=
CPU 成比例提高
CPU 受限的函式在較高記憶體下可更快
執行更快可能代表
成本更低
用測試來找最適配置,而非猜測
並行度:保留 vs 預置
保留並行度
限制同時執行的最大值
保護下游系統與其他函式
預置並行度
預先暖機執行個體,避免冷啟動
適用低延遲、面向使用者的函式
封裝設定與共用程式碼
Environment variables
:依環境設定參數
Layers
:跨函式共用程式與相依項
Extensions
:伴隨函式執行的工具
設定不要放進部署套件
將 Lambda 連接到 VPC
將 Lambda 附掛到
私有子網
以存取內部資源
Lambda 會在你的 VPC 建立
ENI
安全性群組
決定可連到哪些目標
對外需經由 NAT 或 VPC 端點
用 destinations 與 DLQ 處理失敗
非同步呼叫失敗時會
自動重試
Lambda Destinations
:依 onSuccess/onFailure 分流
Dead-letter queue
:收集最終仍失敗的事件
失敗事件不可悄悄丟棄
一起來練習吧!
在 AWS 上部署應用程式
Preparing Video For Download...