在MongooseJS中使用on()或once()表示`open`事件

时间:2013-07-25 20:16:23

标签: node.js mongodb mongoose database

我已经看到了一些实际设置MongoDB连接的不同方法:

  1. 我看过一些人们不使用openerror事件的代码
  2. mongoose.connection.on('open', callback());
  3. mongoose.connection.once('open', callback());
  4. 我对它的看法是:

    • 如果我的应用只在需要使用时连接到数据库,请使用(2)
    • 如果我的应用程序一直连接到数据库......如果我使用(2)或(3)并不重要?

    如果我的应用程序与数据库(在同一台计算机上运行的服务器和数据库)保持持久连接,那么这也会引发一个问题?

    感谢您的帮助

1 个答案:

答案 0 :(得分:2)

如果您的应用程序经常连接到数据库时使用(2)或(3),那么这是正确的。

就持久连接而言,唯一的成本是每隔一段时间就有一个tcp keepalive数据包。您需要确定额外的套接字是否值得为每次呼叫建立新的连接。