gpt4 book ai didi

node.js - 如何在 mongoose 中处理 mongoDB close

转载 作者:太空宇宙 更新时间:2023-11-03 23:34:28 25 4
gpt4 key购买 nike

全部:

我对 mongoose 还很陌生,现在,我打开 MongoDB 的方式如下:

db.js

var DB_URL = "mongodb://localhost/test/";

var mongoose = require("mongoose");

mongoose.connect(DB_URL);
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function (callback) {
console.log("OPEN DB...");
});

module.exports = mongoose;

我想知道:如果我仅通过 CTRL+C 终止使用 Mongoose 连接的应用程序,我必须做什么? MongoDB 会知道此连接已关闭(或者我如何通知这一点)?

这在开发阶段特别有用,因为应用程序可能需要经常重新启动。

谢谢

最佳答案

我认为这是一个可能有帮助的想法。 Node.js 接收 Unix 信号。例如,Ctrl+C 向您在该终端中运行的 Node.js 应用程序发送一个 unix 信号 (SIGINT) 以终止。

假设您想在关闭 Node.js 应用程序之前关闭数据库连接。这样您就可以防止数据丢失或损坏。那么,一个好的方法是覆盖终止信号。

要覆盖信号,您所要做的就是:

process.on('SIGINT', function(params) {
//Shut your db instance here.
//close or save other stuff.
});

这样,当您执行 CTRL+C 时,它会正常关闭,而不会造成损坏。

关于node.js - 如何在 mongoose 中处理 mongoDB close,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34319661/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com