Load balancing is all about distributing traffic efficiently across servers — but how it’s done makes a big difference.
👉 Client-Side Load Balancing
The client decides which server to call.
Uses a list of available servers (often from a service registry).
Example: Netflix’s Ribbon library in microservices.
✅ Pros: Less central bottleneck, faster decisions.
❌ Cons: Each client must know server details, harder to manage at scale.
👉 Server-Side Load Balancing
A central load balancer (like Nginx, HAProxy, AWS ELB) routes requests to servers.
Clients only talk to the balancer, not directly to servers.
✅ Pros: Centralized control, easier scaling, better monitoring.
❌ Cons: Can become a single point of failure if not highly available.
💡 Takeaway:
Client-side = smart clients, decentralized decisions.
Server-side = smart balancer, centralized control.
Modern architectures often combine both for resilience and performance.
Top comments (0)