相关疑难解决方法(0)

AWS Lambda RDS连接超时

我正在尝试使用连接到我的RDS数据库的Node.js编写Lambda函数.数据库正在运行,可从我的Elastic Beanstalk环境访问.当我运行该函数时,它返回一个超时错误.

尝试使用完全相同的结果将超时增加到5分钟.

我在经过一些研究后得出的结论是,这可能是一个安全问题,但无法在亚马逊的文档或这个答案中找到解决方案(这是我唯一可以找到的主题).

以下是安全细节:

  • RDS和Lambda都在同一个安全组中.
  • RDS具有所有流量入站和出站规则.
  • Lambda的角色是AmazonVPCFullAccess策略.

我的代码是:

'use strict';
console.log("Loading getContacts function");

var AWS = require('aws-sdk');
var mysql = require('mysql');

exports.handler = (event, context, callback) => {

   var connection = mysql.createConnection({
        host     : '...',
        user     : '...',
        password : '...',
        port     : 3306,
        database: 'ebdb',
        debug    :  false
    });

    connection.connect(function(err) {
      if (err) callback(null, 'error ' +err);
      else callback(null, 'Success');
    });

};
Run Code Online (Sandbox Code Playgroud)

我得到的结果是:

"errorMessage": "2017-03-05T05:57:46.851Z 9ae64c49-0168-11e7-b49a-a1e77ae6f56c Task timed out after 10.00 seconds"
Run Code Online (Sandbox Code Playgroud)

rds amazon-web-services node.js aws-lambda

18
推荐指数
3
解决办法
2万
查看次数

标签 统计

amazon-web-services ×1

aws-lambda ×1

node.js ×1

rds ×1