簡體   English   中英

lambda function時重試的數據如何處理?

[英]How is the retried data processed when a lambda function?

我在我的 lambda function 中捕獲了一些錯誤,然后修復了它們。 由於在我的 lambda function 中,我在 DLQ 中設置了maxReceiveCount=10 ,因此即使在我上傳新版本之前,也會重試大量數據。

我的問題是:如果數據是在 function 更新之前發送的,並且由於其中的錯誤被重試直到新的 function 被上傳,DLQ 中的數據是否會被更新版本的 function 處理? 假設我不會第二次觸發 function。

在接收到最大允許次數 ( maxReceiveCount ) 后,將消息發送到 DLQ。 您必須將消息從隊列中拉出以重新處理它們。

如果您使用基於事件的隊列觸發 lambda(您可能應該這樣做),您可能希望從 DLQ 中取出消息並將它們放入普通消息隊列以重新排隊。

編輯:重新驅動策略可以幫助實現這一點: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-dead-letter-queue-redrive.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM