[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [linuxperf] High load under Apache1.3.3/mod_perl 1.16/Linux 2.2.7 SMP
> Time to get my fingers dirty with 2.2.8, huh? *grin*
>
>>> Does anyone have a feel for what is going on here, or where I should look to
>>> try and cure this?
>
>> This sounds like a post that might interest the linux-kernel list.
>> Give the scheduler patch a try, then post your new situation to
>> linux-kernel, too, if it's still poor.
>
> That was the next solution I was looking at: thanks for the confirmation.
First sign of needing a life: replying to your own emails.
I thought folks'd like a progress report, since at least one discovery
(while perhaps not surprising) is educational.
We have a test machine up with Linux kernel 2.3.3 (which has a *different*
wake-one scheduler patch) which I'm tossing hits at from ApacheBench. Pure
static pages, and it flies: 600+ hits a second for a small gif (even with a
concurrency of 300). [N.B 2.2.8+andrea1 hung on one of our live servers
after 20 mins of serving pages (and like a fool I picked one of the servers
in a facility without 24x7 access/callout cover *wry grin*)]
A page with an SSI tag for the mod_perl handler serves pretty consistently
at 47 hits/sec, and it doesn't seem to matter (within limits either end) how
many httpds you have and how concurrent the requests are from ApacheBench.
And the load goes briefly bananas.
*My* conclusions from this are threefold (please tell me if I'm wrong)
1) our adserver is CPU limited, and much use of Devel::DProf and perhaps
recoding certain things in C is called for. *deep sigh*
2) on pages with SSI's, the speed of your mod_perl SSI is the rate limiting
step, and your static pages httpd will just sit and twiddle its thumbs when
its waiting for the dynamic content server to return its proxy request. The
implication of THIS is that if every page has dynamic content, potentially
every time a user hits a page on your site you are going to tie up a static
httpd for him, and your rate-determining step is your mod_perl SSI.
3) ApacheBench is a poor simulator of real world traffic patterns. Is there
a better one out there? What I'd ideally like to do is to take
Apache_access_log and tell a load simulator program to toss it at my server
N times as fast as Real Life [tm]. I may hack ab to do this.
--
Mike Whitaker / Tel: +44-1733-766619 | Email: mike@cricket.org
CricInfo Ltd / Fax: +44-1733-346287 | Emergency: mike@sms.cricket.org
Technical / Mobile: +44-7971-977375 | Mobile: mike@mobile.cricket.org
Manager / GSM Fax: +44-7970-219651 | Web: http://www.cricket.org/
-
Linuxperf: Working list for the Linux Performance tuning site
Archive: http://mail.nl.linux.org/lists/
Web site: http://www.nl.linux.org/linuxperf/