循环内进行多次mongoose操作,进程卡死,数据库只有几十条数据
发布于 10 年前 作者 jackiesun8 4087 次浏览 最后一次编辑是 8 年前 来自 问答

代码如下: var mongoose = require(‘mongoose’);

mongoose.connect(‘mongodb://localhost/ppl’);

var db = mongoose.connection; db.on(‘error’, console.error.bind(console, ‘connection error:’)); db.once(‘open’, function(callback) { // yay! var Schema = mongoose.Schema, ObjectId = Schema.ObjectId;

var NameSchema = new Schema({
	name: String
});

var Name = mongoose.model('Name', NameSchema);
for (var i = 0; i < 1000; i++) {
	new Name({
		name: "hello,world"
	}).save(function(err, name) {
		console.log(name)
	})
};

});

3 回复

连接池爆了,代码没有释放连接的。插入完成要释放。而且这样写也不行,不能直接for。用async.queue吧

我测试了你的代码,没有爆啊?

@crystaldust 你把1000改成1000000再试试

回到顶部