Het gebruikt slechts één verbinding, als u de standaardmethode gebruikt waarbij u mongoose.connect() gebruikt. Om dit te omzeilen, kunt u meerdere verbindingen maken en vervolgens een model dat naar hetzelfde schema verwijst aan die verbinding koppelen.
Vind ik leuk:
var conn = mongoose.createConnection('mongodb://localhost/test');
var conn2 = mongoose.createConnection('mongodb://localhost/test');
var model1 = conn.model('Model', Schema);
var model2 = conn2.model('Model', Schema);
model1.find({long query}, function() {
console.log("this will print out last");
});
model2.find({short query}, function() {
console.log("this will print out first");
});
Ik hoop dat dat helpt.
Bijwerken Hé, dat werkt wel. Bijwerkend vanuit de opmerkingen, kunt u een verbindingspool maken met createConnection. Hiermee kunt u meerdere zoekopdrachten tegelijk uitvoeren vanuit hetzelfde model:
var conn = mongoose.createConnection('mongodb://localhost/test', {server:{poolSize:2}});
var model = conn.model('Model', Schema);
model.find({long query}, function() {
console.log("this will print out last");
});
model.find({short query}, function() {
console.log("this will print out first");
});
Update 2 -- december 2012
Dit antwoord is nu misschien enigszins verouderd - ik merkte dat ik steeds meer stemmen kreeg, dus ik dacht dat ik het zou updaten. De mongodb-native driver die mangoest omhult, heeft nu een standaard verbindingspoolgrootte van 5, dus je hoeft het waarschijnlijk niet expliciet op te geven in mangoest.