1

I have an AWS Lambda function that connects to SQL DB and the timeout for lambda has been set to 120 seconds. But when there is some issue with the DB connection or query execution, lambda is getting timed out after 60 seconds. Below is my DB config. I used node-mssql module.

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

3 回答 3

0

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

于 2018-10-30T03:54:32.480 回答
0

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

于 2021-03-10T01:57:39.287 回答
0

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

于 2018-10-30T17:02:45.273 回答