Зависания fastcgi серверов

Sergey Serov mpa at corg.net
Sat Sep 9 17:36:55 MSD 2006


Hi, all!

Имею следующую проблему.
Если у nginx выставлен таймаут напр. 10 сек., то иногда если fastcgi сервер не 
успел уложиться в эти 10 сек. он зависает судя по strace в read() того того 
файлового дескриптора, который судя по strace используется для связи с nginx.

Проблема эта мучала меня сильно, главным обзазом тем, что я долго не мог 
понять природу зависаний. Но вроде сейчас все изучил, стало легче.

По идее такого быть не должно, т.к. fastcgi должен получить broken pipe и 
завершить работу.

Fastcgi сервер - скрипт Catalyst'a, который использует испытанный перловый 
модуль FCGI::ProcManager который живет без изменений аж 5 лет уже.
Он в свою очередь использует CGI::Fast, который изменяется чаще.

Кто тут виноват пока незнаю.

Пока сделал pkill -9 -f perl-fcgi если не curl -sm 15 url.

Видимо, правильнее всего написать свой ProcManager.

У кого-нибудь были аналогичные проблемы и каковый были способы решения?





More information about the nginx-ru mailing list