我需要增加 AWS Lambda 函數的並行限制,以便該函數不會受到節流。
簡短說明
若要增加 Lambda 函數的並行限制,您必須在 Service Quotas 儀表板中開啟配額增加案例。
如需詳細資訊,請參閱 Lambda 函數擴展和管理 Lambda 函數的並行。
**重要事項:**當您增加並行限制時,即會增加 AWS 帳戶的成本。如需詳細資訊,請參閱 AWS Lambda 定價。位於特定 AWS 區域帳戶中的所有函數會共用您的並行限制。
解決方法
驗證原因以確認您的使用案例是否需要增加並行限制
遵循下列指示:如何對「超過請求率」和 429 "TooManyRequestsException" 錯誤的 Lambda 函數限流進行疑難排解?
此外,請確定您在 Service Quotas 儀表板中檢閱並行執行指標,以查看目前的並行用量。
計算所需的並行限制
**重要事項:**請確定您是否請求適合於使用案例的並行限制。AWS 拒絕對沒有有效使用案例的高並行限制的請求。
將函數的平均執行時期持續時間 (以秒為單位) 乘以函數每秒收到的平均請求 (調用) 數。結果是您所需的並行限制。
**重要事項:**如果您使用未預留並行,請確定限制不高於 AWS 區域並行限制。
當您計算所需的並行限制時,請注意下列事項:
- 每個 AWS 區域的預設並行限制為每個給定時間 1,000 次調用。但是,新的 AWS 帳戶減少了並行和記憶體配額。
- Lambda 函數沒有最大並行限制。但是,只有在您的使用案例需要增加時才會授予限制增加。
- 若要避免節流,最佳實務是在需要增加前至少兩週請求限制增加。
- 如果您在 Amazon CloudFront 中將 Lambda 與 CloudFront Lambda@Edge 搭配使用,則必須針對每個區域開啟個別的配額增加案例。
並行限制計算範例
60 second average function runtime duration x 20 requests on average per second = 1,200 required concurrency limit
撰寫 Lambda 函數的使用案例說明
請確定您增加並行限制的請求包含下列詳細資訊:
- 請求並行限制
- 您的函數每秒將接收的預期平均請求數
- 您的函數每秒將接收的預期最高請求數
- 預期執行時期持續時間
- 函數記憶體大小
- 調用類型 (事件或請求回應)
- 事件來源
- 載入測試結果,解釋需要增加配額的原因
- 有助於支援您的使用案例的任何其他資訊
在 Service Quotas 儀表板中開啟配額增加案例
- 開啟 Service Quotas 儀表板。
- 選擇 AWS Lambda 卡。Lambda Service Quotas 頁面即會開啟。
- 選擇並行執行。
- 在最近的配額增加請求窗格中,選擇請求配額增加按鈕。
- 輸入您請求的並行限制。然後,選擇請求。
- 您也可以選擇配額詳細資訊按鈕來顯示下列詳細資訊:
先前的配額請求
目前配額的使用率百分比
與並行指標相關聯的警示和標籤
將 Lambda 函數的使用案例說明新增至您的請求
- 開啟 Service Quotas 儀表板。
- 在導覽窗格中,選擇配額請求歷史記錄。您的配額請求清單即會出現。
- 找到您的並行限制增加請求。然後,選擇配額增加請求旁邊的狀態選項。您的請求狀態以及相關的支援案例連結即會出現。
注意:請求的初始狀態為待處理。狀態變更為請求配額後,AWS Support 案例編號即會出現。
- 選擇案例編號以開啟您請求的問題單。
- 在問題單的評論執行緒中,新增 Lambda 函數的使用案例說明。
**注意:**您將收到來自 AWS Support 的狀態更新電子郵件,該電子郵件會核准或拒絕該請求。如需詳細資訊,請參閱請求配額增加。
相關資訊
操作 Lambda: 應用程式設計 — 擴展和並行:第 2 部分