Systems & Backend

Autoscaling

Automatically adding or removing server instances based on load, so capacity follows demand.

Autoscaling automatically adjusts the number of running instances based on a signal like CPU, request rate, or queue depth — adding capacity under load and removing it when idle, so you pay for what you need instead of provisioning for peak.

Worked example: a service scales from 3 to 30 instances during a spike when CPU crosses 70%, then back down as it falls — no human paging required. Gotcha: autoscaling reacts with a lag (metrics, cool-downs, boot time), so it handles gradual ramps well but a sudden spike can still overwhelm you before new instances are ready — which is why it pairs with load-shedding and, for known events, pre-scaling; and scaling on the wrong metric (CPU when you are memory- or IO-bound) scales the wrong thing.