Тема: FastCGI: server "." (pid .) terminated by calling exit with status '0'

Добрый день!

Столкнулся с проблемой, упёрся в стену, буду очень признателен, если сможет кто помочь.

Итак,
На веб-сервере бегают debian, apache, perl, fastcgi
Обрабатываются (скрипты написаны на perl) около 400.000 запросов/день
apache(fastcgi) сконфигурирован под 32 статичных процесса-обработчика

Проблема: постоянно идёт "FastCGI: server "..." (pid ...) terminated by calling exit with status '0'"
Т.е. fastcgi-процесс запускается, через какое-либо время он "убивается(его убивают)". Процесс может проработать от ~1 до ~10 мин.,
за это время успевает пробежать от ~50 до ~1000 циклов. Но всегда наступает "FastCGI: server "..." (pid ...) terminated by calling exit with status '0'".

Довольно часто процессы терминируются группами от 3 до 10-15 процессов сразу.

Не могу найти причину.

Не в курсе, что, где, да как может быть причиной? В каком направлении делать debugging? Что отслеживать? Перепробовал вроде всё, упёрся в стенку.

Заранее благодарю.

2

Re: FastCGI: server "." (pid .) terminated by calling exit with status '0'

Т.е. fastcgi-процесс запускается, через какое-либо время он "убивается(его убивают)"

Если судить по коду возврата, он завершается успешно, с кодом 0. Значит, завершение корректное (не утечка памяти или вроде того) и осталось выяснить, чем оно вызвано.

Мне тут подсказывают, что с FastCGI это нормально - процессы должны перезапускаться раз в N запросов. Или число их должно регулироваться в зависимости он нагрузки на сервер. Пробовали в настройках прописать что-то вроде:

FastCgiConfig -maxClassProcesses 10 -maxProcesses 200 -restart -killInterval 10 -autoUpdate

Поиграйтесь с этими параметрами.

Re: FastCGI: server "." (pid .) terminated by calling exit with status '0'

afiskon пишет:
FastCgiConfig -maxClassProcesses 10 -maxProcesses 200 -restart -killInterval 10 -autoUpdate

Актуально в  Cofig прописано

FastCgiConfig -idle-timeout 30 -min-server-life 0 -maxClassProcesses 10 -maxProcesses 32

Встраивали в  debugging показания количества циклов, которые пробегает скрипт. Абсолютно никаких закономерностей количества циклов, после которых процесс terminated - может после 50, а может и более 1000 бегать