Код IT
← Каталог

Надежность и доступность — Алгоритмы балансировки

Фрагмент из «Надежность и доступность»: Алгоритмы балансировки.

nginx projectencyclopedia7-06-proektirovanie-i-arhitektura-design-2134 embed URL статья в энциклопедии
Nginx main.conf
# Nginx — конфигурация балансировки
upstream backend {
    # Метод наименьшего числа соединений
    least_conn;
    
    # Серверы с весовыми коэффициентами
    server 10.0.0.1:8080 weight=5 max_fails=3 fail_timeout=30s;
    server 10.0.0.2:8080 weight=3 max_fails=3 fail_timeout=30s;
    server 10.0.0.3:8080 weight=2 max_fails=3 fail_timeout=30s backup;
    
    # Поддержание долгоживущих соединений
    keepalive 32;
}

server {
    location / {
        proxy_pass http://backend;
        proxy_next_upstream error timeout http_502 http_503;
        proxy_next_upstream_tries 2;
        proxy_next_upstream_timeout 10s;
    }
}
# Nginx — конфигурация балансировки
upstream backend {
    # Метод наименьшего числа соединений
    least_conn;
    
    # Серверы с весовыми коэффициентами
    server 10.0.0.1:8080 weight=5 max_fails=3 fail_timeout=30s;
    server 10.0.0.2:8080 weight=3 max_fails=3 fail_timeout=30s;
    server 10.0.0.3:8080 weight=2 max_fails=3 fail_timeout=30s backup;
    
    # Поддержание долгоживущих соединений
    keepalive 32;
}

server {
    location / {
        proxy_pass http://backend;
        proxy_next_upstream error timeout http_502 http_503;
        proxy_next_upstream_tries 2;
        proxy_next_upstream_timeout 10s;
    }
}