sql >> Databasteknik >  >> NoSQL >> MongoDB

Alternativ för Mongoose autoReconnect

Jag hade samma fråga som du, och robertkleps lösning fungerade inte heller för mig. Jag upptäckte när MongoDB-tjänsten stoppas, en felhändelse utlöses, men connection.readyState är fortfarande 1 (ansluten). Det kan vara anledningen till att den inte återansluts automatiskt.

Det här är vad jag har nu:

  var db = mongoose.connection;

  db.on('connecting', function() {
    console.log('connecting to MongoDB...');
  });

  db.on('error', function(error) {
    console.error('Error in MongoDb connection: ' + error);
    mongoose.disconnect();
  });
  db.on('connected', function() {
    console.log('MongoDB connected!');
  });
  db.once('open', function() {
    console.log('MongoDB connection opened!');
  });
  db.on('reconnected', function () {
    console.log('MongoDB reconnected!');
  });
  db.on('disconnected', function() {
    console.log('MongoDB disconnected!');
    mongoose.connect(dbURI, {server:{auto_reconnect:true}});
  });
  mongoose.connect(dbURI, {server:{auto_reconnect:true}});


  1. MongoDB Backup Management Tips för delade kluster

  2. Mongoose befolka efter räddning

  3. Online Apache HBase Backups med CopyTable

  4. elasticsearch v.s. MongoDB för filtreringsprogram