Experimente o script com uma conexão com o banco de dados quando o servidor for iniciado e tudo for executado nessa conexão.
Portanto, você terá apenas um
MongoClient.connect
quando o aplicativo ouve, em vez de para cada consulta
const url = "mongodb://adminMongo:[email protected]:12345";
// outline the options for mongo db connection
const mongoOptions = { useUnifiedTopology: true };
// create a new mongo client to connect to the database
const client = new MongoClient(url, mongoOptions);
// connect to mongodb database on start of server
client.connect(function(err) {
if (err) {
console.log('Unable to connect to the MongoDB database');
// exit the process if a connection to the database cannot be made
process.exit(1);
} else {
// create local host server
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
}
});
Então, quando você quiser consultar o banco de dados, não precisará abrir uma nova conexão
por exemplo. esta função deve funcionar sem a necessidade de conectar
function dbInsert(dataCategory, dataTitle, dataStart, dataEnd, dataInterval){
var doc = {data_category:dataCategory,
data_title:dataTitle,
data_start: dataStart,
data_end: dataEnd,
data_interval: dataInterval};
// insert document to 'users' collection using insertOne
statsDB.collection('stats').insertOne(doc, function(err, res) {
if(err) throw err;
console.log("Document inserted");
});
}