ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

post_action


  • To: nginx-ru@xxxxxxxxx
  • Subject: post_action
  • From: "Alexey V. Belanov" <alexey.belanov@xxxxxxxxx>
  • Date: Wed, 18 Oct 2006 14:32:30 +0300
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:date:from:to:subject:message-id:mime-version:content-type:content-transfer-encoding:x-mailer; b=RuVeROgJkSVyiRRCJfAUOm2w1afsJ1T2+4qOVlHm4qwj4qBFk1/P3hPnMgACg6bcRKhLkT+i16A4sspiBlb+Z4pNLhtn/Zb/FxM703K6YlcHVshewOvN/BpCaq1mSXD3D/7Nlx5ZulOd89R5tq1KIguxJzK2J5wuLXujSl2KZCo=

Доброго дня.

Не так давно переключили одну из своих внутренних файлопомоек на работу
с post_action для динамического ограничения скоростей. Ограничивается
скорость на сессию и количество разрешенных сессий на пользователя.
php-шки работают на апаче, сессии хранятся в HEAP mysql таблицах,
memcached пока не получилось внести в существующую идеологию. В общем и
целом все работает как задумывалось за исключением "залипания" сессий. В
рассылке уже писали об этом, но как я понимаю ограничившись банальным
рестартом nginx-а с очисткой активных сессий дело дальше не пошло.

Ситуация же следующая: клиент отправляет запрос на старт очередной
сессии, nginx проксирует запрос на apache, тот какое-то время думает и
отдает ответ (время конечно можно здорово уменьшить использованием
memcached, но это ничего не решит). В это время пользователь по своей
инициативе (проверить просто - забить все место на диске и регетом
стартовать закачку) уже закрыл соединение с nginx, в логах которого
появляется 499 ошибка, но апач сессию стартовал и бекпоста по ней нет.
Сессия залипла.

Вопрос - можно ли предусмотреть бекпост в такой ситуации, для нас это
критично, да наверно и не только для нас. Пусть например будет
дополнительно post_action_499, в любом случае ситуация идет к тому чтобы
сделать это самостоятельно кривым хаком исходников nginx в обработчике
этой ошибки.

-- 
Alexey V. Belanov <alexey.belanov@xxxxxxxxx>




 




Copyright © Lexa Software, 1996-2009.