lambda@edge aws在哪里执行

Where is the lambda@edge aws executed

我们在云端部署了 lambda@edge。我们看到默认限制是每个 AWS 区域 1000 个 lambda 并发。

据我了解,lambda@edge 在边缘位置执行,并且该边缘位置附加到一个区域(例如伦敦或法兰克福)。第一次调用 cloudfront 时,lambda@edge 从区域拉到边缘位置并在此处执行。

所以限制1000 lambda并发只是在区域,而不是在边缘位置?

您的并发限制是每个区域的。每个区域还有每秒触发次数限制,但是这两个限制都可以根据 AWS 支持部门的请求提高。

对于该请求,每个 Lambda@Edge 调用都在靠近边缘位置的一个特定 AWS 区域的控制下运行,查看器通过该区域连接到 CloudFront。您可以很容易地观察到这一点,因为 AWS_REGION 环境变量始终设置为控制区域。

实际执行 Lambda@Edge 触发器的位置并没有实际记录——当然 "at the edge," 除外——但是在 2016 年 11 月 30 日,AWS announced a new two-tiered architecture for CloudFront, with the existing outer tier called "global edges" and the new inner tier called "regional edges." Literally one day later, on December 1, the Lambda@Edge preview was announced... 所以边缘在问题可能是内层的。