feat(scaling): serialize per-socket fan-out + NEW_CHANGES_BATCH
DE
5mo ago+81559+81559+01234567890123456789012345678901234567890123456789-8870-8870-0123456789012345678901234567890123456789
Port of upstream ether/etherpad-lite#7768
Serializes per-socket fan-out and adds NEW_CHANGES_BATCH wire format.
Summary by cubic
Serializes per-socket socket.io fan‑out to guarantee message ordering under load and adds a NEW_CHANGES_BATCH wire message to batch multiple changes per emit for higher throughput.
-
New Features
- Per-socket send queue ensures ordered delivery and prevents interleaved emits.
NEW_CHANGES_BATCHbundles multiple change ops in one payload to reduce emit overhead; falls back to existing messages for older clients.
-
Migration
- No action for core Etherpad clients. If you run a custom client or proxy, add a handler for
NEW_CHANGES_BATCHor keep using existing messages until updated.
- No action for core Etherpad clients. If you run a custom client or proxy, add a handler for