我已為 AWS Lambda 函數設定佈建並行,但其無法正常運作。我要如何修正此問題?
解決方案
在您為 Lambda 函數設定佈建並行之後,可能導致失敗的原因如下:
- 您可能會使用 Lambda 的 $LATEST 版本叫用 Lambda 函數,而不是使用已設定佈建並行的版本。
- 所有佈建並行均在使用中,因此會以標準並行叫用您的 Lambda 函數。這會造成冷啟動。
- 您的帳戶已超過高載限制。
請依照下列步驟排解佈建並行的問題:
1. 確認用於設定佈建並行的 Lambda 函數未設定為 $LATEST。這是因為未發佈的 Lambda 函數版本不支援佈建並行。
如需詳細資訊,請參閱 Lambda 函數版本和設定佈建並行。
2. 在 Lambda 函數組態中,確認佈建並行顯示 Ready (就緒) 狀態。
3. 在 Amazon CloudWatch 主控台的 Metrics (指標) 頁面上,檢查 ProvisionedConcurrencySpilloverInvocations 指標。此指標顯示所有佈建並行均在使用中時,Lambda 函數以標準並行執行的次數。
如需佈建並行指標的詳細資訊,請參閱使用 Lambda 函數指標並檢閱使用叫用指標區段。
4. 檢查 Lambda 函數是否已設定預留並行。預留並行會限制函數的縱向擴展能力。
5. 如果仍然無法解決問題,則在 AWS Support 建立案例。在您的案例中提供下列資訊:
- Lambda 函數的 ARN。
- Lambda 函數設定上的工作流程,包括所有內含服務。
- 有關問題是間歇性或連續性發生的詳細資訊。
- 完整的 .txt 格式 CloudWatch 日誌,從問題發生開始。這些 CloudWatch 日誌用於識別 Lambda 函數錯誤,包括逾時問題、初始化持續時間和許可問題。
- 問題的確切時間戳記,帶有時區或 UTC 時間戳記。
備註:由於安全和隱私權因素,AWS Support 代表無法存取客戶的 CloudWatch 日誌。
如需詳細疑難排解資訊,請參閱Lambda:以佈建並行進行冷啟動。
備註:與預留並行不同,使用佈建並行會產生額外費用。如需有關佈建並行成本的詳細資訊,請參閱 AWS Lambda 定價。若要保持佈建並行的低成本,請考慮為您的組織排程佈建並行用量。如需詳細資訊,請參閱針對週期性尖峰用量排程 AWS Lambda 佈建並行。
相關資訊
為 Lambda 函數佈建並行存取
指標類型
存取 AWS Lambda 的 CloudWatch 日誌
疑難排解 Lambda 中的叫用問題