sql >> Databáze >  >> NoSQL >> MongoDB

Použití mongoDB v Express routerech

Měli byste vytvořit připojení jednou a použít je ve všech obslužných programech.

Právě teď děláte, že se znovu připojujete k databázi při každém jednotlivém požadavku, dokonce i u těch požadavků, které databázi vůbec nepoužívají. Kromě toho voláte next() ještě předtím, než čekáte na navázání spojení.

Databázová připojení mají být trvalá – ne jednorázové, takže s vaším přístupem pravděpodobně dosáhnete velmi špatného výkonu a ani si nejsem jistý, proč byste to chtěli dělat. Měli jste nějaké problémy s jedním připojením? Nemyslím si, že by takové zatloukání vaší databáze pomohlo. Pokud něco, může to situaci jen zhoršit.

Když se připojíte k Mongo pomocí nativníhoovladače MongoDB Node.js existuje několik možností, které můžete použít, například:

  • poolSize - Nastavte maximální velikost fondu pro každý jednotlivý server nebo připojení proxy (výchozí je 5 )
  • autoReconnect - Znovu se připojte při chybě (výchozí je true )

Některé další zajímavé možnosti jsou:reconnectTries , reconnectInterval , keepAlive , connectTimeoutMS , socketTimeoutMS .

Pokud nejste spokojeni s výchozími hodnotami, můžete hodnoty těchto možností změnit.

Pro více informací viz:




  1. Spočítejte prvky pole, které odpovídají podmínce

  2. vytvořit mongodb dokument s vnořenými dokumenty atomicky?

  3. Jak spustit mongodb vytvořením účtu

  4. Neplatné schéma, očekává se `mongodb` nebo `mongodb+srv`