AWS Lambda超时

时间:2018-10-30 03:11:58

标签: node.js amazon-web-services aws-lambda node-mssql

我有一个连接到SQL DB的AWS Lambda函数,并且lambda的超时已设置为120秒。但是,当数据库连接或查询执行出现问题时,lambda将在60秒后超时。下面是我的数据库配置。我使用了node-mssql模块。

const DBConfig = {
    user: Config.DBUser,
    password: pswd,
    server: Config.DBHost,
    port: Config.DBPort,
    database: Config.DBName,
    connectionTimeout: 60000,
    requestTimeout: 60000,
    options: {
        encrypt: false
    }
}

3 个答案:

答案 0 :(得分:0)

这是因为尝试连接数据库时连接正在超时,并且您没有在lambda函数内部正确处理超时,并且在那里lambda将会超时。

答案 1 :(得分:0)

Lambda的持续时间超过配置的超时值之前无法超时。 执行终止的其他选项包括: -处理程序功能已完成。 -提出了未处理的异常。特别是在NodeJS中,Lambda日志中的错误消息将为:“在完成请求之前退出了进程”(尽管这并不意味着存在超时)。 -存在内存不足的问题,但这似乎不是您的问题。

答案 2 :(得分:0)

您是否尝试过增加 lambda 函数的内存?过去,当我将内存提升到 1GB+ 时,这似乎为我解决了许多连接问题。