We’ve just pushed a beta release including a larger change that will land in 1.3.3: DDP batching.
To upgrade to the release, run:
meteor update --release 1.3.3-ddp-batching-beta.0
DDP callbacks are now batched on the client side. This means that after a DDP message arrives, the local DDP client will batch changes for a minimum of 5ms (configurable via
bufferedWritesInterval) and a maximum of 500ms (configurable via
bufferedWritesMaxAge) before calling any callbacks (such as cursor observe callbacks).
This may markedly improve client-side performance, especially if you are using publications to push large sets of data. Alternatively if you are fetching data with methods to improve client-side performance, this change may mean you can go back to the more idiomatic use of publications.
We’d love you to test the change out against your app: especially if you are using techniques or packages that rely on internal semantics of DDP in unusual ways, such as meteorhacks:fast-render.
Please let us know issues that you run into / open against core here in this thread.