我已经通过了这个链接,(它于2014年12月发布),也提到了这个和这个
AWS Lambda容器重用的工作方式与2016年5月相同,请您分享详细说明的具体链接?下面我对这个AWS Lambda容器重用问题几乎没有任何疑问.
考虑一个用例:
Lambda函数名称"processMessageLambda"在必须处理消息时接收请求,并从POST REST API接收该消息(来自AWS API Gateway,与此lambda函数连接).
现在这个'processMessageLambda'处理消息并将其存储到数据库中.
从逻辑上讲,它执行以下操作:连接到数据库,存储消息并关闭连接.(它在正常情况下工作正常.)
如果请求到达 - 例如每秒10次,并且每个lambda函数需要30秒才能执行,那么它实际上会打开许多数据库连接.
Q1:我们可以在这种情况下使用"连接池"(例如boneCP)吗?因为"processMessageLambda"的调用次数会像每秒一百或每秒十次?
(参考:容器重用的简单示例 - 它按照它说的方式工作,但是会发生什么,许多请求会说 - 每秒10个请求)
问题2:如果可以使用连接池,那么将如何重新使用这个aws lambda容器?
如果考虑一个案例:
让我们考虑这个Lambda函数收到的请求是每秒十个,在这种情况下 - 将创建这个lambda函数的10个不同的容器,或者将创建单个容器的lambda函数,并将与所有这10个请求一起使用?
问题3:如果将创建10个不同的lambda函数容器,那么这意味着将使用10个数据库连接,那么这些10个容器将在进一步的请求中被重新使用?
问题4:请您从开发人员的角度解释一下,在重用aws lambda容器时,它实际上是如何实现lambda容器重用工作或开发人员如何考虑它?
问题5:如果容器重用已经到位,开发人员如何维护变量状态,以便开发人员知道哪个变量可以重用?