1 回答
- 最新
- 投票最多
- 评论最多
0
【以下的回答经过翻译处理】 首先,让我们了解一下 lambda 事件过滤器的设计初衷并不是多次过滤相同的消息,在每次成功的单次/批量调用后,消息都会被清除,除非您在处理突然出现的错误时显式地删除它们。
这样做是为了避免再次处理不匹配的消息,而且这样做可能会堵塞批量大小,导致 lambda 过滤器无休止地运行,无法在头部找到合适的记录进行处理。
你可能会问,我们为什么要使用这个过滤器,这是为了确保我们处理的是正确的消息以节省我们的计算时间和空间。因为 SQS 本身无法过滤。
此外,SQS 更适合于一个消费者类型的架构,如果你想有另一个消费者,最好有多个 SQS 队列。
要拥有单独的队列,您可以初始化创建一个具有相同payload的Event Bridge事件,然后使用Event Bridge规则 将消息移至正确的 SQS,并使用过滤模式和单次/批量调用策略。
相关内容
- AWS 官方已更新 3 年前
- AWS 官方已更新 3 年前
- AWS 官方已更新 3 年前
- AWS 官方已更新 2 年前