aws-lambda - FIFO Sqs 和 AWS Lambda 中的奇怪行为
问题描述
fifo 队列的 backlog 中有大约 20K 条消息。Lambda 是 fifo 队列的消费者。一个来源是使用组 id - Group1 将消息推送到 FIFO 队列。
lambda 代码抛出了一个可重试的异常,因此将重新处理整个批次。但是现在当我使用不同的消息组 id 即 Group2 运行我的黄瓜测试用例时。按照我的预期,应该并行处理 Group2 消息。但看起来他们正在被处理。
我的理解是否正确,多个组 id 应该由 lambda 并行处理,但看起来它没有发生。
解决方案
对于 FIFO 队列,最多可以有 20,000 条正在进行的消息(消费者从队列中接收,但尚未从队列中删除)。如果您达到此配额,Amazon SQS 不会返回任何错误消息。如果您的队列有大量积压的 20,000 条或更多具有相同消息组 ID 的消息,则 FIFO 队列可能无法返回具有不同消息组 ID 但稍后发送到队列的消息,直到您成功使用来自积压的消息
推荐阅读
- sql-server - SSMS 无法打开数据文件
- c# - 将 apicontroller 构造函数参数作为 Func<> 委托传递的目的是什么?
- security - 使用 TLS 连接时如何向客户端授予权限?
- javascript - 将JS数组转换为对象
- asp.net - 如何在没有任何 ViewModel 的 Razor ASP.NET 中获取自定义用户属性?
- python - 具有列表设计模式的 Python 过滤器
- pandas - 多索引上的 Pandas Dataframe Mul
- java - 如何将 git 存储库初始化为现有程序?
- python - 如何在 kivy 绑定 python 中使用 lambda?
- visual-studio-code - 为什么VSCode“无法打开扩展程序。发生未知错误。”?