The AKF Scale Cube defines dimensions:
X-axis (Horizontal duplication): Run multiple identical copies behind a load balancer. Simple but doesn't help with data growth.
Y-axis (Functional decomposition): Split into services by function (user service, order service). Each scales independently.
Z-axis (Data partitioning): Split by data. Users A-M on one shard, N-Z on another. Handles data growth.
Most systems use all three:
- X-axis: Multiple web servers
- Y-axis: Separate services for different features
- Z-axis: Sharded databases
In interviews, identify which dimension addresses which bottleneck.