【问题标题】:is it good to keep mongodb connection alive? [duplicate]保持mongodb连接有效吗? [复制]
【发布时间】:2016-01-15 22:02:19
【问题描述】:

我使用 node.js 和 Mongodb 创建了我的网站。 几年前学习php的时候,看到每个页面的db事务后断开mysql实例以节省服务器资源很重要。 所以我对nodejs + mongodb做了完全相同的事情。 但很快我意识到每个连接和断开功能都需要花费大量成本,尤其是 mongodb。 即使响应客户端,保持 mongodb 连接活动是否更好?保持连接处于活动状态并重新连接是否更好? 我在谷歌上搜索了这个,但我找不到任何有用的答案。 非常感谢给我一些建议。

【问题讨论】:

    标签: node.js performance mongodb


    【解决方案1】:

    当发生 Node POSIX 信号时,您应该关闭 mongoose 连接。 SIGINT 进程在终端上按下 Ctrl-C 或服务器关闭时触发。

    另一种可能的情况是在数据流完成时关闭连接。无论如何,更建议在启动时连接并在关闭时断开连接。

    这是断开 SIGINT 信号的代码。

    // If the Node process ends, close the Mongoose connection
    process.on('SIGINT', function() {
      mongoose.connection.close(function () {
        console.log('Mongoose disconnected on app termination');
        process.exit(0);
      });
    });
    

    也检查一下这个:

    Do I need to manually close a mongoose connection?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-10
      • 1970-01-01
      • 2016-07-19
      • 2011-06-11
      • 2014-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多