2014-07-05 2 views
0

Вот фрагмент кода, на котором мой вопросЛучше подход с использованием родного драйвера MongoDB в NodeJS

var MongoClient = require('mongodb').MongoClient 
    , Server = require('mongodb').Server; 

var mongoClient = new MongoClient(new Server('localhost', 27017)); 
mongoClient.open(function(err, mongoClient) { 
    var db1 = mongoClient.db("mydb"); 
    mongoClient.close(); 
}); 

Ill использовать один и тот же объект mongoClient во всем моем приложении, чтобы сделать все операции DB, но разве это огнь процесс для открытия и подключения к базе данных для каждого запроса ???? Im ссылаясь на следующие строки коды, когда я использовать объект

mongoClient.open(function(err, mongoClient) { 
     var db1 = mongoClient.db("mydb"); 
     mongoClient.close(); 
}); 

mongoClient Или лучше держать открыто соединение с подключением к правым базам данных и использовать тот же объект для все чтения/записи в DB ??? Если это лучший подход, то как я могу использовать объект db1 в других моих модулях, чтобы напрямую читать/записывать в монго, не открывая его каждый раз?

ответ

0

MongoClient - это пул соединений, который обычно открывается при запуске приложения и не закрывается, пока вы его не закроете. Поэтому вы абсолютно не хотите открывать и закрывать его по каждому запросу; просто оставьте его открытым и поделитесь им во всей своей заявке.

Смежные вопросы