node.js - Mongoose 超时并抛出异常

标签 node.js mongodb mongoose

当node.js服务器不活动一段时间时,它会崩溃并出现以下异常:

events.js:72
throw er; // Unhandled 'error' event
^
Error: failed to connect to [------] at null. (/Users/tomi/Documents/Platforms/Databox/Sources/Web/server/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/server.js:636:74)
at EventEmitter.emit (events.js:106:17)
at null. (/Users/tomi/Documents/Platforms/Databox/Sources/Web/server/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:139:15)
at EventEmitter.emit (events.js:98:17)
at Socket. (/Users/tomi/Documents/Platforms/Databox/Sources/Web/server/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/connection.js:476:10)
at Socket.EventEmitter.emit (events.js:95:17)
at net.js:441:14
at process._tickCallback (node.js:415:13)

这就是我初始化连接的方式:

function connect(uri, poolsize, callback) {

var options = {
    db: { native_parser: false, retryMiliSeconds: 5000, numberOfRetries: 360000 },
    server: { poolSize: poolsize, socketOptions: { keepAlive: 1, connectTimeoutMS: 5000 },    auto_reconnect: true }
};
this.connection = mongoose.connect(uri, options).connection;

var addEvents = function (obj) {
    obj.on('connected', function () {
        console.log('Connected to database');
        //connectionPoolStats.logConnectionPoolStats();
    });
    obj.on('disconnected', function () {
        console.log('Disconnected from database');
    });
    obj.on('close', function () {
        console.log('Connection to database closed');
    });
};
addEvents(this.connection);

if (callback) {
    callback();
}

};

连接只会抛出异常并且不会重新初始化;(

有什么线索吗?

最佳答案

您在哪个版本的 Mongoose 中看到了这个?

请使用今天发布的新版本进行测试:npm install mongoose@3.6.17

如果您仍然看到此问题,请open a ticket .

关于node.js - Mongoose 超时并抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17809285/

相关文章:

node.js - 使用 typegoose 时出现 GraphQLError : Type Query must define one or more fields.

javascript - 无法访问 express js router.delete 中的参数

node.js - 从 node.js 中的另一个模型引用一个模型

node.js - 在 Git post-receive hook 中运行无限长的进程

mongodb:upserting:仅在插入文档时设置值

mongodb - 如何在mongodb中获取两个日期的差异总和

node.js - Mongoose 确保文档是唯一的

javascript - PythonJS 本地服务器

node.js - 从服务器端的 Handlebars 模板获取 HTML 代码

java - 在 Apache Spark 作业中使用 mongo-hadoop 连接器写入结果之前清理 MongoDB 集合