mod_perl memory leak pri graceful reloadu

Jan Kasprzak kas na fi.muni.cz
Středa Srpen 6 12:13:09 CEST 2008


	Pouzivame mod_perl s tim, ze prubezne vyvinute casti webu
hned zverejnujeme (a pro zmenene moduly delame graceful reload Apache).
Zjistil jsem, ze Apache kazdym graceful reloadem bobtna, takze casem
se priblizi ulimitu a zacnou padat ruzne veci (typicky Encode si nacita
*.so s prislusnym kodovanim a podobne). Zkusil jsem omezovat konfiguraci
a dosel jsem k zaveru, ze pouhe

LoadModule perl_module modules/mod_perl.so

prida nekolik KB leaku pri graceful reloadu. A s dalsimi perlovymi vecmi
(PerlModule, LoadModule mod_apreq2, <Perl> sekce, ...) se ta velikost
leaku zvetsuje (zkousel jsem restart, zmerit pamet ("ps axl", sloupec VSZ),
pak 100x graceful reload prolozeny vzdy "sleep 1", at se potomci stihnou
vzpamatovat), a zmerit pamet znovu. Bez mod_perlu se VSZ nezvetsuje vubec.

	Dela vam to taky? Jedine reseni ktere me napada je restart
nekdy v noci, ale restart (na rozdil od graceful reloadu) zabije prave
aktivni pozadavky.

-Y.

-- 
| Jan "Yenya" Kasprzak  <kas at {fi.muni.cz - work | yenya.net - private}> |
| GPG: ID 1024/D3498839      Fingerprint 0D99A7FB206605D7 8B35FCDE05B18A5E |
| http://www.fi.muni.cz/~kas/    Journal: http://www.fi.muni.cz/~kas/blog/ |
>>  If you find yourself arguing with Alan Cox, you’re _probably_ wrong.  <<
>>     --James Morris in "How and Why You Should Become a Kernel Hacker"  <<


Další informace o konferenci Perl