【问题标题】:Running tasks in AWS Lambda background在 AWS Lambda 后台运行任务
【发布时间】:2020-11-05 09:22:10
【问题描述】:

当 lambda 仍然运行一个 promise 时,lambda 函数是否可能返回一个值给 api-gateway?

function wait() {
    return new Promise(resolve => setTimeout(()=>'Hello', 3000));
}


function handler(event){
    wait.then(console.log);
    return {statusCode: 200};
}

【问题讨论】:

  • 任务完成后我想在云手表中看到这个日志
  • 不,你应该做的是告诉调用方不要等待。

标签: node.js amazon-web-services aws-lambda promise aws-api-gateway


【解决方案1】:

我认为这是不可能的。当处理函数结束时,任何其他正在运行的线程都将停止。

我在下面链接了一篇您可能会感兴趣的文章。看来,如果 Lambda 容器被重用,可以恢复那些暂停的后台线程,但这不一定能保证。

资源:

【讨论】:

    猜你喜欢
    • 2021-06-11
    • 1970-01-01
    • 2020-10-24
    • 1970-01-01
    • 2021-07-11
    • 1970-01-01
    • 2013-10-01
    • 2016-09-05
    • 2015-05-05
    相关资源
    最近更新 更多