tgoop.com/devopsslib/4167
Create:
Last Update:
Last Update:
🌐 Балансировка нагрузки в Nginx
Nginx предоставляет несколько алгоритмов распределения трафика между серверами. Каждый метод решает конкретные задачи и подходит для разных сценариев.
• Round Robin
Запросы поступают на серверы по очереди. Это стандартный метод, который не требует дополнительных директив.
upstream backend {
server 192.168.1.101;
server 192.168.1.102;
}• Least Connections
Новый запрос направляется на сервер с наименьшим количеством активных подключений. Nginx автоматически отслеживает нагрузку.
upstream backend {
least_conn;
server 192.168.1.101;
server 192.168.1.102;
}• IP Hash
Запросы от одного IP-адреса всегда попадают на один и тот же backend-сервер. Обеспечивает сохранение сессий без дополнительной синхронизации.
upstream backend {
ip_hash;
server 192.168.1.101;
server 192.168.1.102;
}• Weight
Более производительные серверы получают больше запросов пропорционально указанному весу.
upstream backend {
server 192.168.1.101 weight=3;
server 192.168.1.102 weight=1;
}Совет: методы можно комбинировать с параметрами
max_fails и fail_timeout для автоматического исключения недоступных серверов из балансировки.#root@prompt
