只连接一次到Mongo

时间:2016-07-20 20:32:30

标签: node.js mongoose

更新:在构建示例时,我发现罪魁祸首似乎是restify-enroute。包裹正在搞乱猫鼬连接。我将示例发布到https://github.com/HeavyStorm/mongoose-enroute-conflict

我已经明白mongoose.connect是如何在mongoose和Mongo之间建立连接的,并且假设这是一个单独的连接 - 一旦被调用,我的应用程序中的每个模块都可以调用Mongo。

这可能是错的。

我目前的情况:

我正在呼叫连接:

mongoose.connect("mongodb://localhost/test");

我的应用结构:

/
/app.js
/modules
   ./users
       ./module.js

在app.js中,我致电mongoose.connect。我还加载并公开来自module.js的路线。当我收到一个http调用时,module.js代码启动(我可以从调试器中看到),但是一旦我调用mongo(在这种情况下通过Model.find()),代码就会跳过,我的永远不会在客户端中调用回调来处于等待状态。

但是,如果我将mongoose.connect行添加到module.js,则Model.find()几乎立即产生回调,而客户端会收到响应。

TLDR :我是否必须在访问数据库的每个模块上调用mongoose.connect?这是为什么?

0 个答案:

没有答案