繁体   English   中英

如何高效调用一百万个 Lambda?

[英]How to invoke a million Lambdas efficiently?

我有一个 Lambda 函数,我目前正在从 EC2 调用它。 但是我在循环中顺序调用它。 因此,如果要处理 1000 个项目,我将使用一个简单的循环来迭代它们并为每个项目调用 Lambda 函数。

如果要为一百万个项目这样做,这将是效率低下的。 我有什么选择可以减少这个过程所花费的时间。

所有项目的流程都是独立的; 所以,我可以在 1000 个线程中调用 1000 个 Lambda。 但这合适吗? 我对 Celery、SQS、redis 等不太了解,但这些在这种情况下会有用吗?

以防万一,每个 Lambda 大约需要 5 分钟才能完成。

一种常见的做法是将消息推送到 Amazon SQS 队列并配置该队列以触发 AWS Lambda 函数

您一次最多可以将 10 条消息推送到 SQS 队列。

这种方法还具有通过将消息移动到死信队列来处理失败调用的好处。

请参阅:将 AWS Lambda 与 Amazon SQS 结合使用

使用消息代理会更有效。 您可以使用Redis 或 RabbitMQ

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM