A few years ago, I gave a talk at React Helsinki about the Linear Sync engine.
We have come a long way since then, so we recorded a sequel to that talk at our company offsite a few weeks ago, detailing the challenges we’ve overcome scaling the engine:
@artman
This is great
@artman
thanks for sharing. In the last slides where you defer loading issues on a team to the batch loader what happens when you get a sync packet that’s a change to one of those? Hope that question makes sense. Great work sharing this 👍 learned a bunch
@rcclerigo
Batch loader will only update issues that are not yet in the local database, so sync will always win, it’s realtime after all and the latest representation of the entity.
@artman
What are your thoughts on potential of sub 100ms edge db's. Could drop CRDT because UI is snappy enough? With some optimistic updates sprinkled in?
@artman
I wonder what would be your take on my attempt to build an automated sync engine at (branch sync-engine)
The idea was quite simple, but also quite complicated to implement (not ready):
You define your 'access rules' (what user can see), and the server,…
@artman
@linear
Just watched it. Great talk! Something that’s still not clear to me is when you decide to send transactions over the wire vs. the actual models. For instance, if you already have some models in the client but a bit old, how do you decide what to do?