Как работает балансировщик нагрузки

Python Senior Без компании
Как работает балансировщик нагрузки
Ответы
Балансировщик нагрузки (Load Balancer) распределяет входящие запросы между несколькими серверами, чтобы избежать перегрузки одного узла и повысить отказоустойчивость. **Основные алгоритмы балансировки:** - **Round Robin** – запросы поочередно отправляются на серверы. - **Least Connections** – запрос направляется на сервер с наименьшим числом активных соединений. - **IP Hash** – клиентский IP хешируется, чтобы запросы одного клиента всегда шли на один сервер. **Пример с `nginx` (конфигурация):** ``` upstream backend { server backend1.example.com; server backend2.example.com; server backend3.example.com; } server { location / { proxy_pass http://backend; } } ``` **Python-пример с `requests` и балансировкой:** ``` import random servers = ["http://server1:8000", "http://server2:8000"] selected_server = random.choice(servers) # Простейшая балансировка response = requests.get(f"{selected_server}/api/data") ``` Балансировщики также могут проверять здоровье серверов (health checks) и исключать нерабочие узлы.