|3. Load Balancing
Chapter 3System Design~1 min read

Load Balancing

Traffic Distribute करणे

Load Balancer हे एक component आहे जे incoming requests multiple servers मध्ये distribute करतो. एकाच server वर सगळ्या requests येणार नाहीत — load evenly वाटतो आणि कोणता server down गेला तरी requests दुसऱ्या server कडे जातात.

Marathi Analogy

Railway station च्या booking counter सारखं — 10 counters आहेत, queue manager प्रत्येक customer ला कोणत्या counter कडे जायचं सांगतो. एक counter बंद झाला तरी बाकी चालतात. हाच Load Balancer चा role!

Load Balancer Architecture

text
Client Requests
      ↓
[Load Balancer]
  ↙    ↓    ↘
Server1 Server2 Server3
  ↘    ↓    ↙
   [Database]

Load Balancing Algorithms

  • Round Robin — प्रत्येक request एका एका server कडे rotate होते (simple, default)
  • Weighted Round Robin — powerful servers ला जास्त requests (Server1: 60%, Server2: 40%)
  • Least Connections — सर्वात कमी active connections असलेल्या server कडे
  • IP Hash — same client नेहमी same server कडे जातो (session stickiness)
  • Random — randomly select (simple load testing साठी)

Layer 4 vs Layer 7 Load Balancing

Two types

text
Layer 4 (Transport Layer):
  - TCP/UDP level वर काम करतो
  - Content बघत नाही — फक्त IP आणि port बघतो
  - Fast, simple
  - Example: AWS NLB (Network Load Balancer)

Layer 7 (Application Layer):
  - HTTP level वर काम करतो — URL, headers, cookies बघतो
  - Content-based routing: /api/* → API servers, /static/* → CDN
  - Smart routing शक्य
  - Example: AWS ALB (Application Load Balancer), Nginx

Health Checks

Load Balancer नियमितपणे प्रत्येक server ला ping करतो (health check). जो server respond करत नाही त्याकडे requests पाठवणे बंद करतो. Server परत आला की automatically requests पाठवायला सुरुवात करतो.

💡

Popular tools: Nginx, HAProxy (open source), AWS ALB/NLB, Cloudflare Load Balancer. Nginx एकाच वेळी web server + load balancer म्हणून काम करतो.

Key Points — लक्षात ठेवा

  • Load Balancer = traffic multiple servers मध्ये distribute
  • High Availability — एक server down, traffic दुसऱ्याकडे
  • Round Robin सर्वात simple algorithm
  • Health Checks — unhealthy servers automatically remove
  • Layer 7 LB = smart routing (URL/header based)
0/11 chapters पूर्ण