sql >> Database >  >> NoSQL >> MongoDB

Mongoose QueryStream nieuwe resultaten

Ik ontdekte dat om deze methode te laten werken, ik mijn verzameling moest wijzigen in een capped collection :

var OrderSchema = new Mongoose.Schema({...
}, { capped: { size: 10, max: 10, autoIndexId: true }});

var Orders = db.model('orders', OrderSchema);

var stream = Orders.find().tailable().stream();

stream.on('data', function(doc){
    console.log('New item!');
    console.log(doc);
}).on('error', function (error){
    console.log(error);
}).on('close', function () {
    console.log('closed');
});

Dit werkt omdat ik nu de MongoDB collection . kan behandelen als iets van een berichtenwachtrij, die continu wordt bijgewerkt.

Vreemd genoeg als ik dit in een SocketIO . wikkel event Ik krijg veelvouden van dezelfde documents waardoor ik denk dat er nog steeds iets niet helemaal goed is...



  1. Hoe voeg je een query toe in Mongodb?

  2. redis:teller elke dag resetten

  3. MongoDB-projectieparameter werkt niet in findOne()

  4. Probleem met Redis install cc:opdracht niet gevonden