调用依赖的lambda函数,避免冷启动

问题描述 投票:0回答:1

我有一个包含 nextjs 的系统,与 fastapi 通信,与 Edgedb 通信,与 aurora 通信。为了节省成本,我想在 lambda 函数上运行这三个服务。我知道冷启动的局限性。

在我的用例中,如果调用fastapi lambda,它肯定会与数据库通信,这意味着edgedb lambda也将被调用,并且在大多数情况下,如果调用nextjs lambda,它将命中fastapi lambda。

是否有一种机制告诉API网关,如果调用nextjs lambda,它也应该唤醒其他两个,以避免三个连续的冷启动?

amazon-web-services aws-lambda aws-api-gateway
1个回答
0
投票

为了避免 lambda 函数中的冷启动,您可以使用 Lambda SnapStart,它将捕获 lambda 函数中发生的初始化的快照和缓存并重用,而不是每次都进行初始化。

https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html

按照此处提供的步骤激活, https://docs.aws.amazon.com/lambda/latest/dg/snapstart-activate.html

但目前 Lambda SnapStart 支持的环境很少,

Java 11 及更高版本的 Java 托管运行时。其他托管运行时(例如nodejs20.x和python3.12),仅操作系统运行时。

© www.soinside.com 2019 - 2024. All rights reserved.