Scalability
Scalability is a system's ability to handle growing load, via vertical scaling (bigger resources) and horizontal scaling (more instances).
Purpose
Design system architecture that can handle load growth.
Mechanism
Vertical: upgrade a single node's CPU/memory (has ceilings). Horizontal: add nodes to share load (needs statelessness or sharding). Elasticity: auto scale on demand. Scaling bottlenecks: databases, network, coordination overhead. Amdahl's law caps the speedup.
Use cases
- System design
- Performance planning
- Elasticity
Related terms
Horizontal Pod Autoscaler
The HPA automatically scales Pod replica counts horizontally based on CPU/memory/custom metrics, adapting to load changes. GLOSSARY
Sharding
Sharding horizontally splits a large table across multiple nodes by a shard key, each node storing a portion of the data, enabling horizontal scaling. GLOSSARY