错误:Db上没有打开的连接_executeQueryCommand Node.js



我有一个与express框架一起使用的节点应用程序。此应用程序运行平稳。但突然间,在一段时间后,它开始出现错误

"错误:Db_executeQueryCommand处没有打开的连接"

从上面错误的描述中,我只是了解到,节点应用程序可能无法连接到数据库。

但是,尽管出现了这个错误,节点应用程序呈现的一些页面仍然能够运行。

我想补充的一件事是,没有特定的页面会出现这个错误,我的意思是,假设第一次出现这个错误是在"/foo"页面,而不是在"/foo1"one_answers"/foo2"中。

但是,假设当我随机刷新页面时,之前加载错误的页面,即"/foo"可能不会出错,而之前成功加载的页面,如"/foo1"one_answers"/foo2"可能会出错。

节点应用程序的并发用户数量可能不会更多,大约为450。

详细信息:1.节点版本:v0.10.292.Express版本:4.9.03.MongoDB版本:2.4.104.操作系统Linux

我寻找了许多解决方案,但没有找到一个强有力的原因,甚至没有找到解决方案。

任何帮助都将不胜感激。

检查此问题,建议对mongodb连接使用{auto_reconnect:true}。

你也可以试试下面的

// Connect to mongodb
var connect = function () {
  var options = { server: { socketOptions: { keepAlive: 1 } } };
  mongoose.connect('mongodb://localhost/db1', options);
};
connect();
mongoose.connection.on('error', console.log);
mongoose.connection.on('disconnected', connect);

最新更新