Vertical Scaling

  • Increasing CPU/RAM of a single machine
  • Useful when it’s challenging to horizontally scale a system

Challenges

  • Hardware limitations - “You can only make a system so powerful”
  • Cost effectives - more expensive than horizontal scaling

Horizontal Scaling

  • Adding more compute/machines to a system
  • Improves fault tolerance
  • More cost-effective

Challenges

  • Data consistency
  • Increased network overhead
  • Requires managing distributed systems