Mam aplikację z MongoDB jako backend. Po uruchomieniu aplikacji konfiguruję połączenie i używam go później w żądaniach.Jak sprawdzić, czy połączenie MongoDB jest żywe w Node.js
Ale jeśli w międzyczasie nie udaje mi się połączyć z db db (np. Mongody), jak mogę to sprawdzić w czasie żądania?
Aby wyjaśnić trochę:
- obecnie mam "api.js", która robi
db.once('open', function../* setup */)
- na zamówienie, robię
db.find(conditions, function(err, res) { if (err) ...else ...})
.
Co chcę zrobić, to sprawdzić, czy połączenie jest żywe przed klauzulą db.find()
. Więc jeśli nie działa, mogę spróbować ponownie uruchomić połączenie db.
P.S. Wiem, prawdopodobnie powinienem ustawić jakąś pulę połączeń lub coś podobnego, zamiast utrzymywać połączenie przy życiu przez cały czas, ale teraz jest ustawione tak, jak jest.
Ok, przy założeniu najszybszego sposobu na wykrycie- błąd w połączeniu stan byłby pierwszą próbą operacji i ponownej próby niepowodzenia (http://stackoverflow.com/questions/8936922/is-inserting-a-new-database -więcej-szybciej-niż-sprawdzanie-jeśli-wejście-istnieje-pierwsze) Jaki byłby najbardziej elegancki sposób na enkapsulację tej próby? – Montagist