AWS Lambda限制了队列处理

时间:2018-03-18 23:29:19

标签: queue aws-lambda amazon-sqs amazon-kinesis rate-limiting

我计划从Web服务获取记录列表,该列表限制了在特定时间范围内可以进行的请求数。

我的想法是设置一个这样的简单管道:

List of URLs -> Lambda Function to fetch JSON -> S3

我不确定的部分是如何在速率/时间限制块中提供URL列表,例如,每秒产生5个URL并产生5个lambda函数。

理想情况下,我想通过上传/发送/排队列表一次启动它,然后让它自己完成它直到它完全处理完队列。

1 个答案:

答案 0 :(得分:1)

将问题分成两部分。

  1. 触发器:Lambda支持多种类型。寻找使用AWS Lambda处理Lambda FAQs中的AWS事件。
  2. 我个人会选择Dynamo DB。但S3将紧随其后。

    可能还有其他选项使用像Kinesis这样的其他流,但到目前为止这些似乎更简单。

    1. 限制:您可以设置limits on number of lambda instances
    2. 所以,例如如果你选择DDB:

      • 您将所有网址转储到每个网址一行的表格中。
      • 这将创建事件,每行一个。
      • 每个事件都会触发一次Lambda调用。
      • 并行Lambda执行/实例数受config限制。