【发布时间】:2014-06-13 00:30:39
【问题描述】:
以下是我使用 node.js 连接到 mongodb 的连接字符串和选项。如果 mongodb 服务器关闭,我的 Web 应用程序会不断重试并且永远不会回发。我在哪里设置连接超时,所以我可以说数据库服务器在它关闭时关闭? (以下代码在 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);
【问题讨论】:
-
我仍在寻求帮助。感谢您的观看。
标签: node.js mongodb connection timeout