В настоящее время я создаю приложение с помощью Express и mongoDB. Я постоянно задаю вопросы о нескольких вещах, на которые не могу найти четкого ответа. Когда у нас есть следующее (упрощенное) приложение:
const MongoClient = require('mongodb').MongoClient;
const url = "mongodb://localhost:27017/";
const express = require('express')
const app = express()
app.get('/', (req, res) => {
MongoClient.connect(url,(err, db) => {
if (err) throw err;
db.db("mydb").collection("customers").findOne({}, (err, result) => {
if (err) throw err;
// do useful stuff
db.close();
});
});
});
app.listen(3000, () => console.log('Example app listening on port 3000!'));
Вопросы:
- Что является самой «дорогой» операцией, это открытие БД или выполнение действия с БД, например findOne / updateOne. (или это сложнее, чем это?)
- Если 2 пользовательских агента отправляют запрос на получение
/
и маршрут получения выполняется дважды, выполняет ли база данных mongoDB 2 соединения или это может быть сделано на том же соединении?