Ich habe eine Anwendung in Node.JS, die im Grunde alle 30 Minuten einen Snapshot von Daten aus einer WebAPI abruft. Wenn ich versuche, die Datenbank mithilfe einer Sammelanfrage abzufragen, löst die App einen Fehler im Zusammenhang mit dem Timeout aus (MongoError: Verbindung 1 zu 127.0.0.1:27017 ist abgelaufen). Aus meinen Logs sehe ich, dass es genau 30 Sekunden sind. Das Aggregat Abfrage so etwas wie diese:MongoDB Timeout-Problem (Node.js)
collection.aggregate([{
"$group": {
"_id": {
country: "$country",
user: "$user"
}
}
}]).
ich die Abfrage auf einem anderen Client getestet (aber dieselbe Datenbank) und es dauert ca. 60 Sekunden für 25.000.000 Datensätze. Meine Annahme ist, dass es einen Timeout-Parameter mit dem Wert von 30 Sekunden gibt, die meine Anwendung blockiert, die Abfrage zu beenden. Kann mir jemand sagen, wie ich diesen Parameter in Node.JS einstellen kann? Ich benutze 'mongodb' js Bibliothek und meine Host-Maschine ist Windows.
Da dies ein persönliches Projekt ist, wollte ich untersuchen, wie ich MongoDB anstelle einer traditionelleren Lösung wie Oracle oder MySQL verwenden kann, aber dies könnte ein Deal Breaker sein, da Analytik ein Kernteil der gesamten Anwendung ist.
"Die App löst einen Fehler im Zusammenhang mit Timeout" klingt ein bisschen vage. Wie sieht genau dieser Fehler aus? Woher kommt das? – pdenes
der Fehler ist dies: MongoError: Verbindung 1 zu 127.0.0.1:27017 Zeitüberschreitung – Bogdan