0

我的基于 node.js 的应用程序连接到一个 mongodb 数据库,当我手动关闭 node.js 应用程序时,它会触发下面的函数来关闭 mongodb 连接。

//  Process on exit and signals.
process.on('exit', function() { terminator(); });

['SIGHUP', 'SIGINT', 'SIGQUIT', 'SIGILL', 'SIGTRAP', 'SIGABRT', 'SIGBUS',
 'SIGFPE', 'SIGUSR1', 'SIGSEGV', 'SIGUSR2', 'SIGPIPE', 'SIGTERM'
].forEach(function(element, index, array) {
    process.on(element, function() { terminator(element); });
});

function terminator(sig) {
      mongoose.connection.close();    
      process.exit(1);
      console.log('%s: Node server stopped.'.red, Date(Date.now()) );
}

但是,当我关闭 node.js 应用程序时,mongodb 连接也将安全关闭。但在我的情况下,mongodb 会在 /var/lib/mongodb/journal 中创建三个日志文件:prealloc.0 prealloc.1 prealloc.2。三个日志文件太大。

为什么以及在 node.js 应用程序即将关闭时关闭 mongodb 连接而不生成这些日志文件的好方法是什么?

4

0 回答 0