这是我的情景:
我有一个工作EB应用程序来处理这些任务。成功后,我返回200(并且任务已成功从队列中删除)。当它失败时,我返回404,任务立即返回队列(因此,立即重试)。这是不希望的,我想在重试之前延迟这个失败的项目。
是否可以通过可见性超时和延迟队列的组合来实现这一目标?
答案 0 :(得分:3)
您可以使用SQS本机执行此操作,方法是在您刚刚处理的消息上调用ChangeMessageVisibility并将VisibilityTimeout设置为您想要的任何内容:http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibility.html
答案 1 :(得分:1)
回答了我自己的问题,原来我看错了地方(SQS配置选项,而不是EB配置选项)。我正在寻找的神奇设置是EB配置选项中的“错误可见性超时”,它允许您控制失败项目返回其队列之前的时间。