Re: Синхронизация nginx соединений

Alexandre Snarskii snar at snar.spb.ru
Wed Oct 10 15:37:01 UTC 2012


On Wed, Oct 10, 2012 at 01:43:18PM +0300, Viacheslav Biriukov wrote:
> Привет.
>
> Есть кластер active/passive из двух nginx балансеров. Хочется, что бы при
> переезде VIP с активной на пассивную (к примеру для апдейта ядра, ребута и
> т.д.) не терялись соединения. Большие файлы продолжали отдаваться клиентам.

В рамках nginx - не реализуемо по очень простой причине: переезд
VIP'а на другую машину не означает переезда на нее состояния
tcp-сессий, в результате получение "новой" машиной TCP ACK,
предназначенного "старой" машине, будет вызывать обрыв tcp-соединения.

PS: решать задачу можно самыми разными способами. Один из простых -
вынести тяжелый [статический] контент на отдельный субдомен, который
резолвится не в VIP а в "персональные адреса" машин, причем сразу в
несколько, и перед плановым выводом машины на обслуживание просто
заблаговременно убираете её персональный адрес из пула...

-- 
In theory, there is no difference between theory and practice. 
But, in practice, there is. 



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