Reliability, Consistency & Synchronisation
··
81 words·
1 min
A taxonomy of patterns. These design patterns are from a practical tooling angle. The intent is for this post to be a quick reference to trade-off-balancing and the tooling that can be considered for common architecture/system design needs.
Patterns are prioritised for interview prep:
| Priority | Meaning | Count |
|---|---|---|
| 🔴 P0 | Core fundamentals | ~25 |
| 🟠P1 | Likely to appear or be touched on | ~35 |
| 🟡 P2 | Enrichment, deepens adjacent patterns | ~10 |
Each pattern links to relevant DDIA 2e chapters where applicable. Cross-references between patterns are marked with see also links.
| Section | Focus |
|---|---|
| Fundamental Concepts | Axioms underpinning all distributed systems |
| Encoding & Data Formats | Serialisation, protocols, transport |
| Communication & API Design | Service boundaries, messaging, integration |
| Data Storage & Retrieval | Models, indexes, durability, event sourcing |
| Scaling & Performance | Replication, sharding, caching, load |
| Reliability, Consistency & Synchronisation | CAP, consensus, transactions, resilience |
| Observability | Logs, metrics, traces |
| Deployment & Evolution | Rollout strategies, migrations, feature flags |
| Domain-Specific Patterns | Payments, real-time, multi-tenancy |