AT1 — Consistency/Availability: The choice between strong and eventual consistency is the highest-leverage decision in distributed system design. Strong consistency requires coordination across replicas, which limits availability during network partitions. Eventual consistency accepts temporary inconsistency in exchange for availability and lower latency.
AT2 — Latency/Throughput: Latency and throughput trade against each other at every layer. Batching increases throughput by amortising fixed costs, but increases latency for individual requests. Caching reduces latency but adds write-path complexity and staleness risk.
AT4 — Precomputation/On-Demand: Read-heavy systems often precompute results — materialised views, cached feeds, prerendered pages. On-demand computation is simpler but cannot scale to the highest read QPS without paying the compute cost on every request.