sql >> Database >  >> NoSQL >> MongoDB

Waarom krijg ik deze verouderde waarschuwing?! MongoDB

Opnieuw posten vanaf https://jira.mongodb.org/browse/NODE-1868:

De beëindigingsberichten zijn waarschijnlijk omdat client.connect wordt meerdere keren gebeld. Over het algemeen belt u client.connect momenteel meerdere keren (vanaf bestuurder v3.1.13 ) heeft ongedefinieerd gedrag en wordt niet aanbevolen. Het is belangrijk op te merken dat zodra de belofte is teruggekeerd van connect wordt opgelost, blijft de client verbonden totdat u client.close aanroept :

const client = new MongoClient(...);

client.connect().then(() => {
  // client is now connected.
  return client.db('foo').collection('bar').insertOne({
}).then(() => {
  // client is still connected.

  return client.close();
}).then(() => {
  // client is no longer connected. attempting to use it will result in undefined behavior.
});

De client onderhoudt standaard meerdere verbindingen met elke server waarmee hij is verbonden, en kan worden gebruikt voor meerdere gelijktijdige bewerkingen*. Het zou goed moeten zijn om client.connect te draaien eenmaal, en vervolgens uw bewerkingen uitvoeren op het clientobject

* Merk op dat de client NIET thread-safe of fork-safe is, dus het kan niet worden gedeeld tussen vorken, en het is niet compatibel met de cluster van de node of worker_threads modules.



  1. Referentiesets implementeren in Redis

  2. Welke NoSQL-database moet ik gebruiken voor het loggen?

  3. MongoDB:zoek subdocument in parameters voor matrixovereenkomst

  4. Mongoose find(), hoe toegang te krijgen tot de resultaatdocumenten?