On Monday 06 November 2006 17:48, Kjetil Kjernsmo wrote: > I'm working on improving the scalability and performance of our app. It > is rather bad, and I noticed that not many minutes after restart, the > amount of shared memory is down to 10% of the total memory (and I'm at > least at 1/3 on my home Axkit::App::TABOO), and besides, it is bad from > the start too. > > Obviously, there is a lot to gain here, since we run a lot of children > across many backends. > > So, I pulled out Stas and Eric's book, which has a chapter about it. > That's about mod_perl 1.0, but much of it I presume still is valid. > Also, I found an example in > http://perl.apache.org/docs/2.0/user/handlers/server.html#Startup_File > which I tried. > > I have not used the example script of Stas and Eric, but instead insert > some GTop stuff in a registry script that loads a small picture from > the database. It doesn't really use a lot of the stuff I load at > startup. Then I warn the numbers, to find them in the Apache log. > > Then, I have stared at the numbers with bewilderment. > > Without any startup.pl file: > Size: 59346944 Shared: 6172672 Unshared: 53174272 > > Then I set the startup.pl, but removed and included different modules, > just to see what happens. The results are consistent, though: > Size: 76079104 Shared: 5763072 Unshared: 70316032 > Size: 78835712 Shared: 5947392 Unshared: 72888320 > Size: 73920512 Shared: 4878336 Unshared: 69042176 > > So, what I see is that consistently, the amount of shared memory goes > down when I preload modules at server startup... Weird, huh? > It is pretty clear that total memory per child must go up by preloading > modules, but the idea was that the shared portion of it should be much > greater... I mean, just the code, which is identical per child, should > contribute to this... > > I've been monitoring top as the server runs too, and it seems consistent > with these findings, also on other parts of the server. I guess we > should rewrite a lot of stuff here, but I was hoping this would be a > quick fix for some of our problems, as I think there is a lot in here > that would reasonably be in shared memory pages. So, any ideas where I > can start to understand why this isn't shared?
What operating system is it? If linux see http://search.cpan.org/~drolsky/Apache-SizeLimit-0.9/lib/Apache/SizeLimit.pm#linux Torsten
pgplaV7zwtzAV.pgp
Description: PGP signature