Load Balancer
- As the name suggests, It’s meant for balancing the load across all servers registered with it.
- There are 2 dimensions to classify the load balancers,
- Hardware LB(costly) & Software LB
- Application LB (Layer 7) & Network LB (Layer 4)
3. Most popular load balancers are,
- HA Proxy (very comprehensive metrics & monitoring support)
- Nginx (limited metrics & monitoring support). Paid version (Nginx Plus) has a good support for metrics & monitoring.
4. Various load balancing algorithms are,
- Round robin
- Weighted round robin
- Least connections
- Response time based
5. Load balancer does periodic health check of the individual servers and ensure not to route the traffic to those ill servers. It can also do TLS termination. It can support session stickiness using browser cookies. Alternatively source IP based routing also helps to achieve session stickiness.
6. In general, NLBs are more performant than ALB. ALB can do smart routing based on url path or params.