Amazon SQS队列中重复的消息

乌索比

我不是Amazon SQS服务中使用过的经验丰富的人。我必须从我不拥有的队列中读取消息,并对其进行处理,以使用一些信息来构建一个小型数据库。

到目前为止,我只有一些代码可以读取队列中的所有消息并进行处理。该脚本定期运行。

但是,最近我观察到队列中的消息量突然变得非常大。当我收到10000个样本消息时,我发现大约有6000个重复消息。

行为的突然改变让我感到困惑(到目前为止,我还没有观察到重复的消息)。队列似乎永远不会用完。

这是我用来从队列中读取所有消息的代码。

conn = boto.sqs.connect_to_region(
    'myregions',
    aws_access_key_id='myacceskey',
    aws_secret_access_key='secretAccesKey')
q = boto.sqs.queue.Queue(connection=conn, url='outputQueue')

rs = q.get_messages(10)
all_messages = []
while len(rs) > 0:
    all_messages.extend(rs)
    print (len(all_messages))
    rs = q.get_messages(10)

谁能解释为什么我突然收到重复的消息?我没有权限查看队列的大小,如何获得队列中的所有消息?我做对了吗?

西蒙·麦克莱夫

处理完队列中的消息后,您需要发送回一条消息,通知该消息已被处理,应该将其删除。否则,将仅意味着该消息位于队列中并被重新提取,直到达到提取限制并发送到死信队列或过期为止。

SQS不保证唯一性,您可以获取重复项,可以设置可见性超时,以防止在检索到消息后的一段时间内读取消息,例如等待一分钟左右,以便您有时间处理消息并从中删除消息。队列。这应该避免重复。

至于删除消息,则迭代遍历消息,对其进行处理,然后运行其中一个...

conn.delete_message(q, message)

或者

q.delete_message(message)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Java中异步处理队列中的Amazon SQS消息

来自分类Dev

Amazon SQS FIFO 队列发送消息失败

来自分类Dev

Amazon AWS,来自SQS队列的消息多次传递

来自分类Dev

Amazon AWS,来自SQS队列的消息已多次传递

来自分类Dev

我想使用Amazon SQS保存消息并使用lambda读取队列数据并将其转储到mysql中

来自分类Dev

在Spring Boot中配置Amazon SQS队列名称

来自分类Dev

Amazon SQS消息多次交付

来自分类Dev

如何在AWS CloudFormation中创建Amazon SQS队列并将其订阅到Amazon SNS主题?

来自分类Dev

将处理过的消息重新发送到 Amazon SQS 队列

来自分类常见问题

在Amazon SQS中从DLQ移出消息的最佳方法?

来自分类Dev

无法在C#中访问Amazon SQS消息属性

来自分类Dev

何时使用Amazon SQS的延迟队列功能?

来自分类Dev

在Amazon中处理消息

来自分类Dev

如何使Amazon sqs消息遵守FIFO

来自分类Dev

使用Golang从Amazon-SQS队列中读取-打开文件描述符

来自分类Dev

SQS:获取SQS队列中的消息数

来自分类Dev

Amazon SQS死信队列:是真的死信还是有毒?

来自分类Dev

Amazon SQS存储数据

来自分类Dev

改善Amazon SQS性能

来自分类Dev

通过Boto发出的Amazon SQS消息出现乱码

来自分类Dev

通过过滤将消息从Amazon SNS路由到SQS

来自分类Dev

Amazon SQS Long Polling不返回所有消息

来自分类Dev

带有Java的Amazon sns和sqs消息

来自分类Dev

带有Java的Amazon sns和sqs消息

来自分类Dev

Amazon SQS Java SDK-无法接收消息属性

来自分类Dev

带有任意Python对象的Amazon SQS消息?

来自分类Dev

从Amazon Web Services SQS轮询消息的最佳方法是什么

来自分类Dev

Amazon SQS Long Polling不返回所有消息

来自分类Dev

通过过滤将消息从Amazon SNS路由到SQS

Related 相关文章

热门标签

归档