[英]Connection Timeout MongoDB, AWS lambda and Nodejs
我正面临一个奇怪的问题。 我在 EC2 实例上安装了 MongoDB 并正在处理一个项目。 我试图从本地访问数据库它工作正常。 但是,当我尝试执行我的 AWS lambda 函数时,出现超时错误。 因此将 lambda 函数超时增加到 50 秒。 我正在运行一个简单的查询来查找 10 条记录中的一条记录。 我收到以下错误。 任何人都可以帮我解决这个问题吗?
MongoNetworkError: failed to connect to server [EC2_PUBLIC_IP:PORT_NUMBER] on first connect [MongoNetworkError: connection 0 to EC2_PUBLIC_IP:PORT_NUMBER timed out]
我在Nodejs 中使用MONGODB-NATIVE 。
const MongoClient = require('mongodb').MongoClient;
MongoClient.connect(DB_URL, (err, conn) => {
if(err) return console.error(err);
let db = conn.db('DB_NAME');
db.collection('COLLECTION_NAME').findOne({ value: 1232131 }, (error,results) => {
if(error) return console.error(error);
conn.close();
return console.log(results);
});
});
我不认为这是您的代码的问题。 这是一个题外问题,因为它是您的防火墙设置的问题。
在 EC2 安全组中,请在默认为 27017 的入站端口中添加 MongoDB 端口,然后尝试访问该数据库。
单独的第一个答案对我不起作用,我仍然必须转发到我的 mongo 副本
这是您要运行的命令。
"ssh -i aws-ssh-key.pem -g -N -f -L 8000:127.0.0.1:27017 ec2-user@10.0.8.10"
查看此链接以获取有关命令的详细信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.