Law*_*eld 2 amazon-web-services aws-lambda aws-lambda-edge
据我了解,当 Lambda 超时时,它会返回错误。
不过,一旦 Lambda 超时,我想知道它是否会立即被 AWS 终止,或者它是否可以在后台继续运行任意时间(可以这么说,与原始请求分离)。
我问这个问题是因为在我的情况下,当 Lambda 超时时,该 Lambda 内的所有处理也会立即停止,这一点很重要。如果 AWS 不能保证这一点,那么我将需要实施自己的措施来确保这一点,即定期检查时钟并在超时后手动停止执行。
(ps,如果 Lambda 在超时时立即被杀死,我想知道 AWS 如何实现将 Lambda 保持在温暖的初始化状态以供后续调用。即,它不能简单地在超时时杀死进程,否则 Lambda 将被下次冷了……)
lambda 函数的执行将停止,但不一定停止从 lambda 调用的外部进程的执行,例如外部 API 或其他 AWS 服务。
为了避免出现问题,lambda 有一个上下文方法 getRemainingTimeInMillis(),允许在执行期间检查超时前还剩多少时间。 https://docs.aws.amazon.com/lambda/latest/dg/nodejs-context.html
根据我自己的经验,大多数时候 lambda 都保持温暖。AWS 终止了代码的执行,而不是实例。
| 归档时间: |
|
| 查看次数: |
4381 次 |
| 最近记录: |