发生移动到死信队列的错误,我已经使用NPM包,比如试图SQS队列并行& SQS-消费者对节点消耗SQS的消息AWS SQS:当消费者
但最近我有机构在当对于特定的消息发生错误时的处理,它应该被移到死信队列
但截至目前其不断重试的最大消息接收计数倍
是否有可能与其他一些NPM包,分别为每当发生错误时,应将其直接移至死信队列中?
发生移动到死信队列的错误,我已经使用NPM包,比如试图SQS队列并行& SQS-消费者对节点消耗SQS的消息AWS SQS:当消费者
但最近我有机构在当对于特定的消息发生错误时的处理,它应该被移到死信队列
但截至目前其不断重试的最大消息接收计数倍
是否有可能与其他一些NPM包,分别为每当发生错误时,应将其直接移至死信队列中?
您可以配置SQS队列任意数量的失败消息的接收1和1000之间
后邮件移动到您的死信队列中有一个消息移动到死信队列后仅接受失败,然后修改队列的配置并将“Maximum Receives”值设置为1.这将成为队列的“Redrive Policy”的一部分。有关配置您的队列以下AWS文档: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html
你不需要使用新的NPM为它,当你完成处理的消息会自动发生。例如,如果您已经使用节点消费者,当您与消息完成你做:
done() //in order to remove from queue due to for success probably
或
done(err) //in order to keep in queue
所以现在为了从队列中移动消息,你不需要死信队列做任何事情在你的代码,但只有在你SQS控制台管理器:
这就是它的名字!祝你好运,我不得不说sqs是扩展任务的好方法。
知道这有点迟,但认为OP正试图寻求动态的政策。 I .: .:
如果大概是什么问,怎么做后者。
答案可能是手动将消息复制到死信队列(它的行为就像任何其他队列那样),然后从源队列中删除消息。
不要相信有一种“特殊”的方式来做到这一点。