首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Lambda排出特定天后的SQS队列

使用Lambda排出特定天后的SQS队列
EN

Stack Overflow用户
提问于 2020-07-02 04:36:16
回答 1查看 129关注 0票数 0

因此,我将一些条目放入SQS队列中,该队列被设置为Lambda的事件源,此流程运行良好。一旦条目进入SQS队列,lambda就会处理它。到目前一切尚好。

但是我有一种情况,我想让条目在SQS中停留3-4天,然后让lambda处理它们。

基本上,如果我看到这个okey,我的SQS队列中有100个条目,现在已经有4天了。我想让lambda耗尽它们并运行一些逻辑。有没有可能,请给我指点一下?

EN

回答 1

Stack Overflow用户

发布于 2020-07-02 10:24:34

我认为禁用lambda不是满足需求的方法,因为您还会错过其他消息。

SQS是消息传递服务,当它与Lambda集成时,你可以只配置重试并处理消息,将消息保留在SQS中,而不是在用户控制中,而是lambda设计这样做。

Lambda轮询队列并与包含队列消息的事件同步调用您的函数。Lambda批量读取消息,并为每个批处理调用一次函数。当您的函数成功处理批处理时,Lambda会从队列中删除它的消息。

enter link description here

一种可以处理查询的解决方案

,但我有一种情况,我想让条目在SQS中停留3-4天,然后让lambda处理它们。

您还需要决定目前不应该处理哪些TTL,并将这些消息推送到DynamoDb,然后基于插入过程中添加的Dynamo DB SQS,在4或5天后处理这些消息。您可以按照以下步骤操作

  • Add属性to SQS is_dynamodb以标识在Lambda函数中的insertion
  • Check事件期间将此类消息推送到DynamoDb
  • 时不应处理的消息。如果事件已删除,则来自DynamoDb的流将被删除而不是insertion
  • Process messages <

>F221

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62684958

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档