Lambdas通话速度变化

时间:2019-06-12 11:27:58

标签: amazon-web-services aws-lambda amazon-dynamodb amazon-cloudfront throughput

我创建了一个简单的lambda,可以从dynamodb读取数据。

第一次调用lambda大约需要1500毫秒,但是随后再次运行lambda大约需要150毫秒。这怎么可能?

AWS可以实现哪种类型的缓存响应?

2 个答案:

答案 0 :(得分:1)

AWS Lambda是您的首次调用时的供应基础架构,并且还需要时间AWS才需要使用代码启动JVM才能调用该函数。启动JVM需要时间,因此会产生一些开销。

另一个问题是冷的,如果没有可用的空闲容器等待运行代码。这一切对用户都是不可见的,AWS可以完全控制何时终止容器。

因此,首次通话涉及上述步骤,您可以看到1500毫秒 下次通话时,一切就绪,因此lambda在150毫秒或更短的时间内给您响应。

这是根据无服务器的设计来节省基础架构成本,仅在需要时才配置基础架构并获得首次呼叫。

我建议您阅读文档
-https://aws.amazon.com/lambda/

答案 1 :(得分:1)

这是由于冷启动引起的。主要是在部署后第一次调用lambda或lambda函数处于空闲状态时发生。

这些文章解释了lambda的语言,内存或大小如何影响冷启动

https://read.acloud.guru/does-coding-language-memory-or-package-size-affect-cold-starts-of-aws-lambda-a15e26d12c76

https://mikhail.io/serverless/coldstarts/aws/