【发布时间】:2021-03-28 14:16:12
【问题描述】:
我看到了许多关于限制 Lambda 并发执行的 SO 问题,但没有看到关于反向问题的问题。
我需要增加并发执行,但遇到了问题。我有一个 Lambda 从 SQS 队列中触发。我已经发布了该函数的一个版本并为其分配了 3,000 个并发执行(我的限制已从默认的 1,000 增加到 5,000)。
尽管如此,当我运行我的流程时,我看到数十万条消息在队列中等待,而我的 Lambda 函数的监控选项卡显示我的 “并发执行”从未超过 1,250 和我的“ ProvisionedConcurrencyUtilization”永远不会超过 50%。此外,图表似乎暗示了 1,250 的硬性限制。
我倾向于怀疑存在某种限制,阻止任何单个 Lambda 使用超过 25% 的总预置容量(1,250 是 5,000 的 25%),但 AWS 文档另有说明。我确实看到了这个 SO question (AWS Lambda Triggered by SQS increases SQS request count),它讨论了 Labmda/SQS 轮询,但它和它链接的文档表明我的流程应该使用 100% 的预置容量。但也许是民意调查导致了问题。
无论如何,这些消息会在队列中等待一个多小时来处理……同时处理的次数不会超过 1,250……而该预置并发的重置处于空闲状态。
非常感谢任何建议/想法。
【问题讨论】:
-
我建议开一张支持票。
标签: amazon-web-services aws-lambda amazon-sqs