The common advice to never duplicate data and always maintain a single source of truth breaks down in real distributed systems. The CAP theorem makes clear that when network partitions occur, you must choose between consistency and availability. Caching local copies of data is not an anti-pattern — it is a deliberate architectural choice that trades some consistency for resilience and independence. Hidden copies already exist everywhere (API responses in memory, queue messages, CQRS read models), so the real question is whether you have an explicit strategy for staleness, invalidation, and divergence. Systems that acknowledge their copies and manage them intentionally are safer than those that pretend copies don't exist.

4m read timeFrom itnext.io
Post cover image
Table of contents
The architecture that looks correctThe fix that feels wrongWhy this tradeoff is mathematically unavoidableGet Ossi Galkin ’s stories in your inboxThe hidden copies that are already thereWhat this looks like in integration workKnow your copies

Sort: