Node.js连接MongoDB 5次

Node.js连接MongoDB 5次,node.js,mongodb,connection,Node.js,Mongodb,Connection,我一直在寻找一种在mongo数据库上执行各种操作的方法,这取决于用户在我的网站上连接的路径。因此,在www.mysite.com/data上发布html将向mongo DB添加信息,在同一url上执行html get将从同一数据库获取数据。我设法解决了这个问题,但每次打开网站服务器时,我都会在mongo数据库中注册5个连接。为什么会这样,这是不是很糟糕 我的代码: 我在mongo.js中运行以下代码: var mongodb = require('mongodb'); module.expor

我一直在寻找一种在mongo数据库上执行各种操作的方法,这取决于用户在我的网站上连接的路径。因此,在www.mysite.com/data上发布html将向mongo DB添加信息,在同一url上执行html get将从同一数据库获取数据。我设法解决了这个问题,但每次打开网站服务器时,我都会在mongo数据库中注册5个连接。为什么会这样,这是不是很糟糕

我的代码:

我在mongo.js中运行以下代码:

var mongodb = require('mongodb');

module.exports.init = function (callback) {
  var server = new mongodb.Server("127.0.0.1", 27017, {});
  new mongodb.Db('test', server, {w: 1}).open(function (error, client) {
    //export the client and maybe some collections as a shortcut
    module.exports.client = client;
    module.exports.myCollection = new mongodb.Collection(client, 'myCollection');
    callback(error);
  });
};
我初始化所有正在运行的东西(app.js):

例如,这篇文章看起来像(仍然是app.js):

我很确定我的重定向没有按我希望的那样工作,但这是另一个问题


为什么每次启动服务器都会有五个连接?

这五个连接是因为这是默认的池大小(5)。您可以调整它,如中所述-它还提到了默认值。

可能重复的Hmm,记得读过它是某种默认值。对游泳池了解不多,那就好了;一台服务器为它的池创建了五个连接?是的,如果您愿意,您可以减少它,但是如果您更频繁地使用服务器,那么无论如何都需要更多的连接。
/express set-up/
var mongo = require('./mongo.js');
/.../
mongo.init(function (error) {
    if (error)
        throw error;

    app.listen(3000, function(){
    console.log("Express server listening on port %d in %s mode",3000,
            app.settings.env);
    });
});
app.post('/App', function(req, res) {
    users = users.concat(req.body);
    res.redirect('/App');        
//Add user to MongoDB
    mongo.myCollection.insert({name: req.body.name, car: req.body.car, website: req.body.website, phone: req.body.phone}, {safe:true}, function(err, objects) {
    if (err)
        console.warn(err.message);
  });