最佳实践/优化问题:当处理在我的 Mongo DB 中使用几个不同集合的请求时,每个请求......使用官方 MongoDB Node.js 驱动程序以“严格”形式获取它是否有效/低效,每个提出请求的时间?或者我应该保存它,保留所有未来请求的集合参考?将我最常使用的 Mongo 集合对象放在手边是否有一些(我没有预料到的)好处?或者将它们保存在我的 Node.js 应用程序的 var 中是否存在一些风险?我是从性能的角度和不可预见的后果的角度来问的。
问问题
90 次
1 回答
0
如果您获得一个严格模式处于活动状态的集合,驱动程序将执行一些步骤来确定您尝试获取的集合是否确实存在。据我所知,这样做的开销是额外的数据库请求。
所以你可以做两件事:
- 如果您确定该集合存在,请打开严格模式;我认为只是
db.collection('yourcollection')
(没有回调,在非严格模式下)的开销很小; - 以严格模式获取集合,将其存储在全局(或“可访问”)的某个地方,然后重新使用它。我认为唯一的风险是当你的应用程序仍然引用它时从数据库中删除一个集合,但风险可能只涉及任何查询都可能失败;
我不得不承认我对 MongoDB 驱动程序(我自己是 Mongoose 用户)不是很熟悉,所以我的意见主要是基于阅读它的代码和文档;)
于 2013-10-16T12:15:12.983 回答