如何使用 mongoose 关闭 mongodb 连接

How to close mongodb connection using mongoose

嗨,谁能告诉我使用 mongoose 关闭 mongodb 连接的正确方法。我尝试检查许多资源,但找不到我要找的东西。我不明白什么时候关闭它。谁能给出完整的例子。

是这样吗?

const mongoose = require("mongoose");

module.exports = () => {
   mongoose.connect(process.env.MONGODB_URI);

mongoose.connection.on("error", (err) => {
   console.log(err, "ERROR");
   process.exit(1);
});
// disconnect here?
mongoose.disconnect()
};

或者每次查询结束后都是这样?

  const mongoose = require("mongoose");

  static async getBestSellingProducts(cb) {
      try {
        let results = await ProductModel.find(
          {
            stock: { $gte: 1 },
            sold: { $gt: 0 },
          },
           "dbId name photoURL sold",
         {
           sort: { sold: -1 },
           limit: 9,
         }
         ).exec();

         cb(null, results);
         // disocnnect here?
         mongoose.disconnect();
      } catch (err) {
            cb(err, null);
            // disconnect here
            mongoose.disconnect();
            }
         }

如果您希望您的程序在之后执行任何请求,则不应在每次请求后关闭连接。当您的程序停止时关闭它确实有意义,即使您在技术上不必这样做。

process.on('exit', function (){
    mongoose.disconnect();
});