architect-handbook

Software Architect Handbook

View on GitHub

Vertical Scaling (Scale up/down)

Vertical scaling is the ability to increase the capacity of existing hardware or software by adding resources.

It is limited by the fact that you can only get as big as the size of the server.

Vertical scaling can resize your server with no significant change to your code (or no change at all).

Large number of elements increases management complexity, more sophisticated programming to allocate tasks among resources and handle issues such as throughput and latency across nodes.

Beware that a single server lacks of failover/redundancy mechanisms and becomes a SPOF.