正确的连接方式(一个池)node-mongodb-native

问题描述:

对于MongoDB,建议总是重复使用同一个数据库连接,并且有一个连接池来支持一些并发。正确的连接方式(一个池)node-mongodb-native

node-mongodb-native1.x你可以配置数据库和服务器对象,创建像这样的池子,

var server = new Server(
    config.host, 
    config.port, 
    { 
     auto_reconnect : true, 
     poolSize  : 5 // <= here is the pool 
    } 
); 

var db = new Db(
    config.database, 
    server 
); 

db.open(function(err, db) { 
    // ... 
} 

2.0他们不赞成一切,除了MongoClient连接:

MongoClient.connect(URI, callback); 

我在哪里添加池选项?我现在是否自动拥有泳池?

随着2.1他们走了一步,利用发电机提示:https://mongodb.github.io/node-mongodb-native/2.1/reference/ecmascript6/connecting/

这是有效利用了再次的每一个动作一个单独的连接?是否使用过时的池?

MongoClient.connect有一个可选的参数optionsserver场,可以让你设置的连接池的大小:

const options = { 
    server: { 
     poolSize: 10 
    } 
}; 
MongoClient.connect(url, options, callback); 

如果不指定,默认poolSize是5 server选项记录在here