AWS Java Lambda JVM实例

时间:2018-03-01 09:14:25

标签: java amazon-web-services aws-lambda serverless-architecture

假设我有一个AWS lambda函数

**String lambdaFunction1() {
//some processing 
}**

让我们说在SNS主题中的任何新消息上都会触发lambdaFunction1。将为10条SNS消息触发多少个JVM实例?

AWS lambda是否在其自己的JVM中执行每个lambda,或者它重新利用相同的JVM实例。

1 个答案:

答案 0 :(得分:1)

引用https://aws.amazon.com/de/blogs/compute/container-reuse-in-lambda/

  

假设你的功能完成,一段时间过去,然后你打电话   它再次。 Lambda可以重新创建一个新的容器,其中   案例经验如上所述。情况就是这样   确定如果您更改了代码。

     

但是,如果您没有更改代码而没有太多时间   过去了,Lambda可能会重用以前的容器。这提供了一些   双方的性能优势:Lambda跳过nodejs   语言初始化,你可以跳过你的初始化   码。您上次写入/ tmp的文件仍然是   如果沙盒被重用了。

     

请记住,您不能依赖于重用容器,因为它是   Lambda创造一个新的特权。

如上所述:您不能依赖于重用容器,但AWS很有可能认为它是性能提升。

或者为了保持简单:AWS可能知道如何让你的Lambdas尽可能高效,所以你不应该真的过分思考这个。

此博客的目标是Node.js,AWS似乎也基于this发布了类似于Java的内容。