On Mar 6, 2013, at 23:35 , Anatoly Mikhailov wrote:
добрый день,
Вопрос балансировки нагрузки не дает мне покоя несколько дней, пока склоняюсь к использованию Nginx в роли балансировщика. Таким образом будет каскад Nginx - (Nginx - Unicorn) x 5.
У нас связка Nginx+Unicorn на нескольких независимых серверах разного назначения (Main, Admin, API, Mobile-API), но сейчас, ввиду растущей нагрузки, есть необходимость основное (Main) приложение поставить за балансировщиком (условно Nginx-А), получив 5 бэк-энд серверов (условно Nginx-B), которые и будут непосредственно проксировать на Unicorn.
В роли балансировщика выступают 2 кандидата: Nginx и Haproxy. С первым все понятно: - SSL-offload, и чистый http между Nginx-A и Nginx-B - с одной стороны, знакомая и понятная настройка - с другой стороны, какие параметры proxy надо настроить (нужен ли http-1.1 между A и B )
Между nginx'ами можно поставить 1.1, поскольку для второго nginx'а постоянные соедиения дешёвые.
Да, Игорь, спасибо, что прояснили этот момент. Если я правильно понимаю, то конфигурация Nginx-A будет:
upstream http_backend {
server 10.0.0.1:8080; # Nginx-B
server 10.0.0.1:8080; # Nginx-B keepalive 16;
}
server {
ssl on;
listen 443 default spdy ssl;
location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://http_backend;
proxy_http_version 1.1;
proxy_set_header Connection "";
}
}
Haproxy: - банально "типичное решение" - нетривиальная и запутанная конфигурация
-- Igor Sysoev http://nginx.com/support.html
_______________________________________________ nginx-ru mailing list nginx-ru@xxxxxxxxx http://mailman.nginx.org/mailman/listinfo/nginx-ru
|