|
|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Sergey Borodich 2:5020/400 12 Mar 2003 20:31:33 To : All Subject : mod_perl and CGI.pm and upload/download file and hanging process --------------------------------------------------------------------------------
Здраствуй Олл.
Случилась такая ситуация.
При использовании
Server Version: Apache/1.3.27 (Unix) mod_perl/1.27 PHP/4.3.1 mod_ssl/2.8.12
OpenSSL/0.9.6c
CGI.pm v1.91
появились проблемы
после очередного переписания некоего скрипта начало появлятся такое (или
обновления софта)
## PID M Elapsed LastReq Srvd Size Share VSize Rss Client
Request (first 64 chars)
31: 6758 W 00:02m 0.000s 740 22.3M 11.2M 28.9M 22.3M 195.5.56.9
POST /script.cgi HTTP/1.1
32: 16718 W 16.066s 0.000s 99 19.9M 11.6M 26.3M 19.9M 195.13.43.198
POST /script.cgi HTTP/1.1
перечитав
modperl-docs/dst_html/docs/1.0/guide/debug.html#Hanging_Processes__Detection
_and_Diagnostics (с perl.apche.org)
начал я дебагить
как оказалось скрипт "залипает" скорей всего при остановке клиентом скачки
или закачки файла ?!
strace показывает как последнее действие select(...)
с gdb не получилось
( надо еще один апач перекомпилять под это дело :(
(gdb) curinfo
Attempt to extract a component of a value that is not a structure pointer.
)
Как временное решение
уменьшил MaxRequestsPerChild
установил и использую Apache::Watchdog::RunAway
HО хотелось бы решить эту проблему в корне.
Что можете посоветовать по этому поводу ?
Как эту проблему решают цивилизованые програмисты ? ;)
ЗЫ: уже надумал такое применят ли
local $SIG{ALRM} = sub { die "$0 timed out with\n" };
alarm 600;
но решение в таком стиле мне что-то не очень нравится (IMHO)
некрасивое ;)
ЗЫ2: в скриптах имеется
$| = 1;
--
Сергей
--- ifmail v.2.15dev5
* Origin: National Taras Shevchenko University of Kyiv (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/13128c4137d7c.html, оценка из 5, голосов 10
|