|
|
|
|
|
by zogrodea
919 days ago
|
|
I don't have any experience with this, but the use of flat arrays (rather than unbalanced trees) in Yjs sped things up considerably according to this long and interesting blog post below. https://josephg.com/blog/crdts-go-brrr/ "We can use a flat array to store everything, rather than an unbalanced tree. This makes everything smaller and faster for the computer to process." |
|
I still stand by what I wrote in that blog post. Using lists rather than trees is still a good approach. And it’s super simple to implement too. You can have a working crdt in a few dozen lines of code.
I’m happy to answer questions if anyone is curious about this stuff. Ive been working to implement and optimise CRDTs for years at this point. Increasingly I’m seeing it as a solved problem.