Re: каскад проксирующих серверов

Maxim Dounin mdounin at mdounin.ru
Thu Mar 7 15:45:46 UTC 2013


Hello!

On Thu, Mar 07, 2013 at 07:31:35PM +0400, Валентин Бартенев wrote:

> On Thursday 07 March 2013 18:54:56 Anatoly Mikhailov wrote:
> [...]
> > Есть ли какие-то особенности в настройках keepalive на upstream, proxy_pass
> > и на самих серверах? В среднем между запросами одного клиента проходит
> > 1-20 секунд. Что думаете о такой конфигурации:
> > 
> > [Nginx-A]
> >   http {
> >     ssl …
> >     # no gzip settings
> >     keepalive_timeout 70;
> > 
> >     upstream backend {
> >       server 10.0.0.1:8080; # Nginx-B
> >       server 10.0.0.2:8080; # Nginx-B
> >       keepalive 70;
> 
> Я бы тут поставил worker_connections at nginx-B * worker_processes at nginx-B / 2.
> 
> Но не зная полностью вашей ситуации - это исключительно "пальцем в небо".

Много тут ставить нет смысла - это размер кеша соединений, и общее 
количество соединений от него никак не зависит.

А приведённая формула - плохая, потому как каждый рабочий процесс 
nginx-A может попытаться сохранить в кеше указанное число 
соединений.  В случае nginx'а плохого не будет (ибо при нехватке 
соединений - keepalive-соединения автоматически закрываются), но и 
смысла в этом нет.  Я бы рекомендовал полученное число разделить 
на worker_processes at nginx-A и использовать как верхнюю планку, за 
которую не следует вылезать.

-- 
Maxim Dounin
http://nginx.org/en/donation.html



Подробная информация о списке рассылки nginx-ru