我需要增加我的 AWS Lambda 函數的並行限制,以避免函數受到限流。
簡短說明
若要增加 Lambda 函數的並行限制,您必須在 Service Quotas 儀表板中開啟配額增加案例。
如需詳細資訊,請參閱 Lambda 函數擴展和管理 Lambda 函數的並行。
**重要:**增加並行限制可能會增加 AWS 帳戶的成本。如需詳細資訊,請參閱 AWS Lambda 定價。您的並行限制會在您帳戶中特定 AWS 區域中的所有函數之間共享。
解決方案
透過驗證函數被調節的原因,確認您的使用案例需要增加並行限
遵循如何對具有 "Rate exceeded" (速率超出) 和 429 「TooManyRequestsException」錯誤的 Lambda 函數限流進行疑難排解?中的說明操作
確保已驗證您未超過特定區域的高載並行配額。如果您受高載擴展限制,請為您的函數設定佈建的並行,而不是增加並行限制。
此外,請確保檢閱 Service Quotas 儀表板中的並行執行指標,以查看目前的並行用量。
計算您所需的並行限制
**重要:**請確保請求適合您的使用案例的並行限制。AWS 拒絕對沒有有效使用案例的高並行限制的請求。
將函數的平均執行時間持續時間 (以秒為單位) 乘以函數每秒接收的平均請求 (叫用) 數。結果是您所需的並行限制。
**重要:**如果您使用未保留的並行,請確保限制不超過 AWS 區域並行限制。
計算所需的並行限制時,請記住以下幾點:
範例並行限制計算
60 second average function runtime duration x 20 requests on average per second = 1,200 required concurrency limit
撰寫 Lambda 函數使用案例的描述
請確保您的並行限制增加請求包含以下詳細資訊:
- 請求的並行限制
- 您的函數每秒將接收的預期平均請求數
- 您的函數每秒將接收的預期最高請求數
- 預期執行時間持續時間
- 函數記憶體大小
- 叫用類型 (事件或請求-回應)
- 事件來源
- 負載測試結果,說明需要增加配額的原因
- 任何有助於我們更深入了解您的使用案例的其他資訊
在 Service Quotas 儀表板中開啟配額增加案例
1. 開啟 Service Quotas 儀表板。
2. 選擇 AWS Lambda 卡。Lambda Service quotas (服務配額) 頁面隨即開啟。
3. 選擇 Concurrent executions (並行執行)。
4. 在 Recent quota increase requests (最近的配額增加請求) 窗格中,選擇 Request quota increase (請求配額增加) 按鈕。
5. 輸入您請求的並行限制。然後,選擇 Request (請求)。
**注意:**您也可以選擇 Quota Details (配額詳細資訊) 按鈕,以顯示以下詳細資訊:
先前的配額請求
目前配額的使用率百分比
與並行指標關聯的警示和標籤
將 Lambda 函數的使用案例描述新增至請求
1. 開啟 Service Quotas 儀表板。
2. 在導覽窗格中,選擇 Quota request history (配額請求歷史記錄)。此時會顯示您的配額請求清單。
3. 找到您的並行限制增加請求。然後,選擇配額增加請求旁邊的 Status (狀態) 選項。此時會顯示您的請求狀態和關聯的支援案例連結。
**注意:**請求的初始狀態為 Pending (待處理)。在狀態變更為 Quota requested (配額已請求) 之後,會顯示 AWS Support 案例編號。
4. 選擇案例編號以開啟您的請求票證。
5. 在票證的註解執行緒中,新增 Lambda 函數使用案例的描述。
**注意:**您會收到來自 AWS Support 的狀態更新電子郵件,該電子郵件會核准或拒絕請求。如需詳細資訊,請參閱請求增加配額。
相關資訊
操作 Lambda:應用程式設計 – 擴展和並行:第 2 部分