Skip to main content

Scalability Overview

Designing systems that handle growing load without degrading performance.

Scaling Strategies

StrategyDescription
Vertical scalingAdd more CPU/RAM to a single machine
Horizontal scalingAdd more machines behind a load balancer
Database shardingSplit data across multiple databases
CachingStore frequently accessed data in memory

Load Balancing

Distribute incoming requests across multiple servers:

Client → Load Balancer → [Server 1, Server 2, Server 3]

Caching Layers

  • CDN — static assets at the edge
  • Application cache — Redis/Memcached for hot data
  • Database query cache — reduce repeated queries

Further Reading