- rtshkmr's digital garden/
- References/
- Architecture Design Basics/
- Pattern Taxonomy/
- Scaling & Performance/
Scaling & Performance
Patterns for handling more load: more reads, more writes, more data, more users. Covers replication, sharding, caching, load distribution, and processing pipelines.
| Pattern | Priority |
|---|---|
| Leader-Follower Replication | 🔴 P0 |
| Leaderless Replication | 🟠P1 |
| Sharding Strategies | 🔴 P0 |
| Consistent Hashing | 🔴 P0 |
| Cache Patterns | 🔴 P0 |
| Cache Invalidation | 🔴 P0 |
| Rate Limiting & Backpressure | 🔴 P0 |
| Batch & Stream Processing | 🟠P1 |
| Load Balancing Patterns | 🟠P1 |
Rate Limiting & Backpressure
🔴 P0 — definitely Stripe territory; protecting services from overload
Cache Invalidation
🔴 P0 — “There are only two hard things in CS: cache invalidation and naming things”
Cache Patterns
🔴 P0 — the primary tool for read scaling; multiple patterns with different consistency guarantees
Consistent Hashing
🔴 P0 — minimises data movement when nodes are added or removed
Sharding Strategies
🔴 P0 — how to split data across multiple databases when one isn’t enough
Batch & Stream Processing
🟠P1 — two paradigms for processing large volumes of data
Leaderless Replication
🟠P1 — Dynamo-style replication; no single leader, quorum-based
Leader-Follower Replication
🔴 P0 — the default replication strategy for most production databases