Load balancer đứng trước nhiều server, phân phối request để không server nào quá tải → tăng throughput, tính sẵn sàng và cho phép scale ngang. Nó cũng phát hiện server hỏng (qua health check) và ngừng gửi tới đó.
Thuật toán phổ biến:
- Round robin: xoay vòng lần lượt; đơn giản, hợp khi các server đồng đều.
- Weighted round robin: server mạnh hơn nhận tỉ lệ cao hơn.
- Least connections: gửi tới server đang ít kết nối nhất; hợp request dài ngắn không đều.
- IP hash / consistent hashing: hash theo client → cùng client tới cùng server (giữ session/cache locality).
Phân biệt tầng: L4 (TCP/UDP, theo IP/port, nhanh) vs L7 (HTTP, định tuyến theo path/header, linh hoạt hơn).