当前位置: 首页 > 知识库问答 >
问题:

SQS Lambda集成-Lambda不处理队列消息

穆正祥
2023-03-14

目前我正在使用SQS-Lambda集成

Lambda的并发可用。SQS批次设置为1记录,0延迟。

SQS的可见性超时为15分钟,Lambda最大执行时间为15分钟

我会注意到,有时SQS消息在飞行中被卡住,根本没有被任何Lambda处理(它们在15分钟后落入死信队列,CloudWatch显示没有Lambda被消息调用)

有人面临过同样的问题吗?

我在VPC内部运行Lambda,如果这很重要的话

共有1个答案

谈琛
2023-03-14

Lambda后端代表您轮询SQS,并在返回消息时调用Lambda函数。如果调用成功,则消息将被删除。但是,如果函数失败,则消息将在可见性超时过期后返回队列(或DLQ,具体取决于您的重新驱动策略)。查看这篇博文。

检查是否可以在Cloudwatch中看到该函数的任何错误度量。在Lambda函数有机会运行任何代码之前,它可能会失败。发生这种情况时,有一个错误度量,但没有调用度量/日志,这很可能是由于不正确的权限造成的。

 类似资料:
  • 我有两个消费者(不同的应用程序)连接到Azure队列。我可以或消息,在消费过程中,我可以或消息。裁判:http://msdn.microsoft.com/en-us/library/azure/hh851750.aspx. 我确定我想使用,然后消息,因为我希望它们在两个应用程序中被接收。我想我应该将队列上的消息生存期设置为10秒,作为删除机制。 然而,由于消息似乎在10秒钟后被删除,因此在这10秒

  • 问题内容: Sidekiq可以阻止哪些可能的原因来处理队列中的作业?队列已满。日志文件表明完全没有活动。因此,队列已满,但日志为空,Sidekiq似乎未处理项目。似乎没有工人在处理工作。重新启动Redis或用FLUSHALL或FLUSHDB冲洗均无效。Sidekiq已开始于 捆绑执行程序sidekiq -L log / sidekiq.log 并生成以下日志文​​件: 您如何找出问题所在?是否有隐

  • 我可以在solace JMS队列中搜索任何特定的消息,然后在其他消息之前处理吗?我们有这样的功能w. r. t慰藉队列。

  • 环境/背景: 使用PHP Stomp库从ActiveMQ(v5.4.3)发送和接收消息。 步骤: 客户端发送消息并回复至 当没有挂起消息或挂起消息时,上述步骤可以正常工作 其他发现: > 允许在同一个请求队列中发送超过1000条消息(并最终处理并放置在响应队列中)。所以它看起来不像内存问题。 有趣的是,在等待超时时,如果我在管理UI上浏览队列,我会得到响应。 默认情况下,我使用的stomp代理将预

  • 我对Azure服务总线队列还比较陌生,正在构建一个项目,该项目需要按照消息到达的顺序(FIFO)处理队列中的消息。 使用微软的文档,我能够理解这一部分。据我所知,我需要为队列打开会话? 我所面临的困难是确定对队列执行以下一组有序任务的最佳方法/服务堆栈。 首先,让我们假设我们有一个基于先进先出的服务总线队列,它有n个消息。我怎么可能: 从队列中拾取第一条消息。 使用Azure函数处理消息。 将有效

  • 当RabbitMq消息到达队列时,我目前正在使用IntegrationFlow来触发作业执行。IntegrationFlow的AmqpInFronChannelAdapter和作业的第一步的ItemReader都配置为从同一队列中读取消息。 我遇到的问题是IntegrationFlow的AmqpInboundChannelAdapter读取RabbitMQ消息,然后ItemReader再也找不到该