这是我正在使用的请求示例:
app.get('/', function (req, res) {
var user_hash = req.cookies.SESSION;
db.connect(mongoURI, function (err, db) {
var collection = db.collection('sessions');
collection.findOne({hash: user_hash}, function (err, item) {
res.render('index', {title: 'Домашняя страница', session: item !== null});
db.close();
});
});
});
我有很多这样的请求。
当我使用以下命令对 Apache Benchmark 进行基准测试时,就会出现问题:
ab -n 100 -c100 http://127.0.0.1:8080
我收到以下错误:
cannon read property collection of null
我的猜测是,在 apache 基准测试之后,在 mongodb 上打开的连接数为 130 - 150。现在我正试图在将我的服务器投入“战斗”之前让它更稳定。我听说过连接池,但无法弄清楚。
现在的问题是:我的服务器崩溃是因为“在 mongodb 上打开了许多连接”还是其他原因?我应该怎么做才能修复它?