Why Scaling Your Servers Can Make Your System Slower | System Design
The Architect’s Notebook
0:00 / 0:00
Why Scaling Your Servers Can Make Your System Slower | System Design
269 просмотров · 9 дней назад
The Architect’s Notebook
739 подписчиков
269 просмотров · 9 дней назад
What happens when you add 10× more servers to your system… and it actually becomes slower?
-----------------------------------------------------------------------------------
📚 Continue Learning
If you want to go deeper into System Design:
🎓 System Design Masterclass: Scalable Financial Systems
16+ hours of real-world system design covering financial systems, scalability, reliability, consistency, failure handling, and architectural decision-making.
https://www.udemy.com/course/system-d...
System Design Interview Practice Tests 2026
https://www.udemy.com/course/system-d...
385+ practical, scenario-based system design questions for building real-world design thinking and interview preparation.
System Design Masterclass — Book Series
https://amitraghuvanshi.gumroad.com
A comprehensive system design series covering foundations, data systems, scalability, reliability, and real-world system design.
The Architect's Notebook Newsletter
https://thearchitectsnotebook.substac...
In-depth articles, real-world architecture insights, practical system design lessons, and ideas for engineers and architects.
--------------------------------------------------------------------------------------------------
In this system design deep dive, we explore a common scaling problem: why adding more application servers doesn't always improve performance—and how a seemingly simple scaling decision can create a bottleneck somewhere else in your architecture.
We'll start with a simple architecture consisting of a load balancer, four API servers, and a PostgreSQL database. As traffic increases, we'll scale the application tier from 4 servers to 40 and investigate why latency increases instead of improving.
More importantly, we'll explore how an architect identifies bottlenecks, evaluates solutions, and anticipates the problems those solutions can introduce.
WHAT YOU'LL LEARN IN THIS VIDEO
Horizontal scaling: Why adding more application servers doesn't automatically increase overall system capacity.
Database bottlenecks: How scaling the application tier can overload a shared database.
Database connection pooling: Why connection pools that work well on individual servers can create problems across a larger fleet.
Concurrency and queueing: Why more concurrent requests don't always translate into more throughput.
Tail latency: Understanding p50, p95, and p99 latency and why averages can hide a poor user experience.
Caching: How caching reduces database load—and introduces cache invalidation, stale data, and cache stampede challenges.
Read replicas: How database read scaling works and why replication lag can cause stale reads.
Asynchronous processing: How queues help absorb traffic spikes and the challenges of consumer lag, retries, and duplicate processing.
Architectural trade-offs: Why every optimization can introduce new failure modes and operational complexity.
THE ARCHITECT'S MENTAL MODEL
A system is not just a collection of independent components. It's a network of dependencies.
Scaling one component changes the workload on other components. The real challenge is understanding those dependencies, identifying the actual bottleneck, and anticipating what might break next.
Before scaling your next system, ask:
What is actually saturated?
Which downstream dependency will receive additional load?
Can I reduce the work instead of adding capacity?
What new failure mode will my solution introduce?
What happens at 2×, 5×, and 10× traffic?
WHO SHOULD WATCH THIS VIDEO?
This video is for software engineers, backend developers, system design learners, aspiring software architects, and engineers preparing for system design interviews. Whether you're learning distributed systems fundamentals or making architectural decisions in production, these principles will help you think beyond individual components.
If you enjoy learning system design through real-world scenarios, architecture diagrams, engineering trade-offs, and an architect's way of thinking, subscribe to The Architect's Notebook.
Learn. Design. Build. Repeat.
#SystemDesign #DistributedSystems #SoftwareArchitecture