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