是否有某种方法可用于在真正的FIFO中使用Amazon SQS消息?我尝试从配置中传递延迟消息,但这没有帮助。
答案 0 :(得分:2)
Amazon SQS刚刚获得FIFO Queues with Exactly-Once Processing & Deduplication:
今天,我们正在通过支持使SQS更加强大和灵活 用于FIFO(先进先出)队列。 我们推出这个新的 现在两个地区的队列类型,并计划在其中提供 许多其他人在2017年初。
这些队列旨在保证处理邮件 正好一次,按照发送的顺序,没有重复。 [...]
[强调我的]
正如所强调的那样,这些新的FIFO SQS队列将呈现任何特殊注意事项,以便消耗真正FIFO中的Amazon SQS消息,但尚未在所有SQS regions中提供[最初仅在美国]东(俄亥俄州)和美国西(俄勒冈州)]。
答案 1 :(得分:1)
简而言之,不:
问:Amazon SQS是否提供对邮件的先进先出(FIFO)访问?
不,Amazon SQS不保证对Amazon SQS队列中的消息进行FIFO访问,主要是因为Amazon SQS的分布式特性。如果您需要特定的消息排序,您应该设计应用程序来处理它。
答案 2 :(得分:1)
需要以特定顺序到达的邮件可能不适合标准SQS
队列。但是,您可以在发送消息时设置消息序列计数器。在接收端,如果顺序正确,您可以继续处理消息。如果出现无序消息,请等到正确的消息出现,然后处理正确的序列消息和其他消息。
2016年11月17日,在某些区域(US East (Ohio)
和US West (Oregon)
)引入了FIFO队列,这些区域补充了标准队列。严格保留发送和接收消息的顺序,并且消息一次传送并保持可用,直到消费者处理并删除它为止;重复项不会引入队列。 FIFO队列使用与标准队列相同的API操作,接收和删除消息以及更改可见性超时的机制是相同的。但是,发送邮件时,必须指定邮件组ID。在此处输入图像描述