MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Umgang mit Verbindungsfehlern für MongoDB

Bei der Verwendung des MongoDB-Treibers gibt es zwei verschiedene Arten von Verbindungsfehlern:

  1. Fehler bei der ersten Verbindung
  2. Fehler nach dem ersten Verbindungsaufbau

Das 'Fehler'-Ereignis wird verwendet, um (2) zu behandeln. Anscheinend suchen Sie nach dem richtigen Weg, um mit anfänglichen Verbindungsfehlern umzugehen. Für diese sollten Sie entweder einen Rückruf an connect() übergeben oder .catch() auf das Versprechen, dass connect() zurück.

const NUM_RETRIES = 3;
const delay = 1000;
let error = null;
for (let i = 0; i < NUM_RETRIES; ++i) {
  if (i > 0) {
    await new Promise(resolve => setTimeout(resolve, i * delay));
  }
  try {
    await mdb.MongoClient.connect(uri);
    break;
  } catch (err) {
    error = err;
  }
}