我的 AWS Lambda 函式收到針對相同事件的多個調用請求。
對於同步調用,調用 Lambda 函式的用戶端與 AWS 服務會重新嘗試該作業。對於非同步調用,Lambda 會針對函式錯誤自動重試兩次。
若要避免重複調用 Lambda 函式,請依您使用的調用方式執行以下操作。
**注意:**若要疑難排解函式調用失敗的問題,請參閱如何疑難排解 Lambda 函式失敗?
查看Lambda 函式的 Amazon CloudWatch Logs。確認重複調用是否使用相同的請求 ID,以及這些調用是否傳回錯誤或發生逾時。
接著,請依您的使用案例採取以下其中一種處理方式:
對於傳回錯誤或發生逾時,且請求 ID 相同的重複調用
**注意:**同一請求 ID 的重複調用若傳回錯誤或發生逾時,表示 Lambda 服務已重新嘗試執行該函式。
設定非同步調用的錯誤處理,以降低 Lambda 函式重新嘗試失敗非同步調用請求的次數。
對於未傳回錯誤或未發生逾時的重複調用
**注意:**未傳回錯誤且未發生逾時的重複調用,表示用戶端已進行重試。
請執行以下動作:
**注意:**每項 AWS 服務會根據其事件來源對應採用不同的同步調用重試行為。如需更多資訊,請參閱使用其他 AWS 服務的事件調用 Lambda。
確認 Lambda 函式程式碼具備冪等性,並可多次處理訊息。接著,找出並解決 Lambda 函式所傳回的所有錯誤。
使用 CloudTrail 事件歷史記錄
使用 AWS Lambda 函式的最佳實務
Howard
已提問 2 年前
DamonDeng
已提問 4 年前
david
已提問 1 年前
li
已提問 3 年前
Jerry_K
已發佈 2 年前