When I play with redo.replicache.dev I count about 3s between making a change and seeing it in the other browser here in Hawaii. There are major architectural changes we could consider, but I wonder how fast we can get it to go with just low hanging fruit type optimizations.
Some observations:
In redo, the push delay is set to 500s, so we don't do anything at all for half a second. By slightly complexifying the debounce approach we could get better latency for single actions while still batching together writes.
Pretty consistently I see a websocket ping back to the source browser (the browser where I took an action) at 1s.
Pretty consistently I see a websocket ping to the destination browser at 2s.
Then the sync handshake seems to take another full second.
When I play with redo.replicache.dev I count about 3s between making a change and seeing it in the other browser here in Hawaii. There are major architectural changes we could consider, but I wonder how fast we can get it to go with just low hanging fruit type optimizations.
Some observations: