如何疑難排解 Lambda 佈建並行問題?

上次更新日期:2022 年 10 月 26 日

我已為 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 佈建並行