【发布时间】:2021-12-07 19:20:36
【问题描述】:
下面有一个用例
- StepFunction -> Lambda -> EventBridge 到 SQS 触发 lambda
当消息接收到 Eventbridge 时,它将发布到 SQS,SQS 将触发 lambda。我在这里注意到的是,每次推送一些消息时,几乎需要 21 秒才能到达最终的 lambda。
SQS 的配置:
- 可见性超时:30 秒
- 死信队列:已启用
- 延迟交付:0
- receiveMessageDelay:尝试了短轮询和长轮询
Lambda 在 VPC 内部
当我进行分析时,所有的桥梁都在瞬间发生,但 SQS 触发 Lambda 需要 21 秒。
所有博客都说,它会立即发生,但对我来说没有运气。
不确定我的配置是否错误。任何帮助对我来说都更有价值。
谢谢, 古纳
【问题讨论】:
-
从 21 秒开始,我可能认为您设置了长轮询(最长 20 秒)。设置
Receive message wait time1 秒怎么样? -
@shimo,是的,我进行了短轮询和长轮询(0 和 1 和 20)。但对于所有人来说,延迟都是一样的。但是,有时它的工作速度非常快,与短期或长期民意调查无关。
-
您的工作流程有什么特别的原因吗?能不能去掉一些元素,比如 SQS 队列?
-
是的,我们更喜欢在信函保留期(最多 4 天)和死信队列的简单设置中使用 SQS
标签: amazon-web-services aws-lambda amazon-sqs aws-serverless