MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Mongoose QueryStream kết quả mới

Tôi phát hiện ra rằng để phương pháp này hoạt động, tôi cần thay đổi bộ sưu tập của mình thành 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');
});

Điều này hoạt động vì bây giờ tôi có thể xử lý tập hợp MongoDB collection giống như một hàng đợi tin nhắn, được cập nhật liên tục.

Thật kỳ lạ khi tôi bọc cái này bên trong SocketIO sự kiện tôi nhận được nhiều documents điều này khiến tôi nghĩ rằng vẫn còn điều gì đó mà tôi đang làm không chính xác ...



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongodb Có thể tổng hợp một đối tượng không?

  2. Làm thế nào để tra cứu một trường với một mảng trong mongodb tài liệu con lồng nhau?

  3. Lược đồ đơn giản Meteor - Khi tùy chọn bổ trợ là đúng, đối tượng xác nhận phải có ít nhất một toán tử

  4. Làm thế nào để tính toán sự khác biệt giữa các giá trị của các tài liệu khác nhau bằng cách sử dụng tổng hợp mongo?

  5. Tại sao mongoose sử dụng lược đồ khi lợi ích của mongodb được cho là nó không có lược đồ?