MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Автоматично затваря ли се връзка с MongoDB при process.exit()?

Отговорът ене . DB връзките не се изключват елегантно, когато излезете (или се сринете).

За да направите това, трябва да използвате нещо подобно на:

// Create a function to terminate your app gracefully:
function gracefulShutdown(){
    // First argument is [force], see mongoose doc.
    mongoose.connection.close(false, () => {
      console.log('MongoDb connection closed.');
    });
  });
}

// Ask node to run your function before exit:

// This will handle process.exit():
process.on('exit', gracefulShutdown);

// This will handle kill commands, such as CTRL+C:
process.on('SIGINT', gracefulShutdown);
process.on('SIGTERM', gracefulShutdown);
process.on('SIGKILL', gracefulShutdown);

// This will prevent dirty exit on code-fault crashes:
process.on('uncaughtException', gracefulShutdown);

Има и някои пакети за справяне с това поведение, но това обикновено е много ясно и лесно за изпълнение.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да разберете дали Mongodb работи в режим на удостоверяване в скрипта на обвивката?

  2. Mongoose изберете полета за поддокумент

  3. MongoDB findOneAndUpdate()

  4. Как да извърша намиране с помощта на $geoIntersects / 2dsphere в подполе на масив?

  5. Дизайн на релационна база данни към дизайн на mongoDB/mongoose