sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur använder man pollingThrottle och pollingInterval?

Dessa 10 sekunder bör vara 10 ms.

  1. Se till att du bara uppdaterar MongoDB och inte Minimongo - om du till exempel uppdaterar genom Meteor-metoder, se till att du inte har klientstubbar.

  2. Prova detta:

    Meteor.publish("currentRoom", function (roomName) {
      return Rooms.find({name: roomName}, {
        disableOplog: true,
        pollingThrottleMs: 10000, 
        pollingIntervalMs: 10000
      });
    });
    

Du måste inaktivera oplog tailing. Om du inte gör det får du fortfarande ett meddelande varje gång MongoDB-loggarna ändras.

Jag testade detta med en observatör på klienten och det fungerade.

Cursor.observe({
  changed: (newdoc, olddoc) => {
    console.log('changed');
  }
});

Ytterligare information:

https://github.com /meteor/docs/blob/version-NEXT/long-form/oplog-observe-driver.md http://info.meteor.com/blog/tuning -meteor-mongo-livedata-for-scalability




  1. Skickar MongoDB-data till .ejs med node.js

  2. MongoDB "kan inte hitta index för $geoNear-frågan"

  3. MongoDB-tjänsten körs inte i Fedora

  4. Är det möjligt att förbättra Mongoexport-hastigheten?