Distributed Data: Conflict-free Data Structures in JS
summary
Covers Conflict-free Replicated Data Types (CRDTs) in JavaScript for building distributed, eventually-consistent apps where browsers and phones can each hold master data and sync after offline periods. Describes production usage (e.g., long sessions ~24h), mentions JS libraries like Gun and other CRDT frameworks, compares transport approaches (event-stream ordering vs websocket acks) and contrasts op-based vs state-based CRDTs with concrete tradeoffs including payload growth and practical mitigations and their failure modes.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 2:50Distributed systems
- 6:06Concurrency issues
- 9:30CAP theorem
- 12:05Consistency types
- 16:23Solving concurrency
- 20:24Message delivery
- 24:28Conflict-free structures
- 29:16State handling
- 31:06CRDT examples
- 34:45Distributed JSON
- 37:40CRDT tools in JS
- 40:30CRDT pros and cons
- 41:34Q&A
related talks
57mLiving in eventually consistent reality
29mHow to Read the Exact Time When You Have a Billion Clocks
35mData Types for Eventually Consistent Databases
50mCRDTs in Practice
22mHappily Ever After: A CRDT Fairy Tale
21mCRDTs for Mortals
46mCoordination-Free Computations
41mConsistency without consensus in production systems
