nodejs 连接的 mongodb 方式是用完就关
MongoClient.connect(DB_CONN, {useNewUrlParser: true}, function (err, db) {
if (err) throw err;
db.db(DB_DB).collection(DB_COL).replaceOne(
{title: where.getTitle(), $or: [{...}, {...}]},
data,
{upsert: true},
callback);
db.close();
});
然后最近发现 mongodb 的容器经常挂掉,好像是连接太多的原因?接口的读写的确会很频繁。 所以想问下是不是这样写不行?是不是应该用连接池来写?那么 nodejs 里面怎么写 mongo 的连接池啊,能麻烦给个例子吗。
日志:
[ftdc] serverStatus was very slow: { after basic: 286, after asserts: 690, after backgroundFlushing: 690, after connections: 690, after dur: 690, after extra_info: 783, after freeMonitoring: 876, after globalLock: 876, after locks: 876, after logicalSessionRecordCache: 876, after network: 876, after opLatencies: 990, after opcounters: 990, after opcountersRepl: 990, after repl: 990, after security: 990, after storageEngine: 990, after tcmalloc: 990, after transactions: 990, after wiredTiger: 990, at end: 1001 }
日志也不懂什么意思,能给解释一下吗?这里的 after 什么意思?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.