如何通过node.js为mongodb设置连接超时
下面是我从node.js连接到mongodb时使用的连接字符串和选项。如果mongodb服务器关闭,我的web应用程序会不断重新尝试,并且永远不会发回。我应该在哪里设置连接超时,以便在数据库服务器关闭时可以说它已关闭?当mongo服务器启动时,下面的代码可以很好地工作如何通过node.js为mongodb设置连接超时,node.js,mongodb,connection,timeout,Node.js,Mongodb,Connection,Timeout,下面是我从node.js连接到mongodb时使用的连接字符串和选项。如果mongodb服务器关闭,我的web应用程序会不断重新尝试,并且永远不会发回。我应该在哪里设置连接超时,以便在数据库服务器关闭时可以说它已关闭?当mongo服务器启动时,下面的代码可以很好地工作 (function(database) { var mongodb = require("mongodb"); database.ObjectID = mongodb.ObjectID; var mongo
(function(database) {
var mongodb = require("mongodb");
database.ObjectID = mongodb.ObjectID;
var mongoUrl = "mongodb://localhost:27017/mydb";
var dbconn = null;
database.getDBConn = function(next){
if(dbconn){ next(null, dbconn); return; } //already connected: return dbconn
mongodb.MongoClient.connect(mongoUrl,
{server: {socketOptions: {connectTimeoutMS: 500}}}, function(err, database){
if(err){ next(err, null); return; } //connection fail: return error
dbconn = {db: database,
movies: database.collection("movie") };
next(null, dbconn); //connection success: return dbconn
});
}
})(module.exports);
看着我会说用
MongoClient.prototype.close
方法检查连接是否已关闭。如果连接已关闭,则发出数据库服务器已关闭的通知。我仍在寻求帮助。谢谢你看。