从 SQS 的文档中,我们可以配置一条消息向其消费者隐藏的最大时间延迟是 15 分钟 - http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-delay-queues.html
假设如果我需要将消息隐藏一天,模式是什么?
例如。我想模仿每天的 cron 来做一些 Action 。
谢谢
最佳答案
最简单的方法如下:
SQS.push_to_queue({perform_message_at : "Thursday November 2022"},delay: 15 mins)
在你的 worker 里面
message = SQS.poll_messages
if message.perform_message_at > Time.now
SQS.push_to_queue({perform_message_at : "Thursday November
2022"},delay:15 mins)
else
process_message(message)
end
基本上将消息以最大延迟推回队列,并且仅在其处理时间小于当前时间时才对其进行处理。
哈。
关于amazon-web-services - SQS - 交货延迟 30 分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31881470/