You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Brian Behlendorf <br...@hyperreal.org> on 1999/05/04 23:37:29 UTC

Mindcraft, part II - anyone want to help?

Mindcraft has a response to the criticisms out there - "OK, help us come
up with a good benchmark".  Thus:

http://www.mindcraft.com/openbenchmark.html

Chris DiBona at VA Research is trying to organize a testing rig - if
anyone can help from the Apache tuning side of things (Dean?  Cliff?
Marc?) send him an email at chris@dibona.com.  

Thanks!

	Brian




Re: Mindcraft, part II - anyone want to help?

Posted by Andrew Finkenstadt <ka...@icon-stl.net>.
I've written a thank-you note to mindcraft.  I will be very interested to see
the results and the process of getting there.  If a mailing list is set up to
support the tuning efforts, I'd love to know where it is so I can watch and
learn.

Andy


Brian Behlendorf wrote:
> 
> Mindcraft has a response to the criticisms out there - "OK, help us come
> up with a good benchmark".  Thus:
> 
> http://www.mindcraft.com/openbenchmark.html
> 
> Chris DiBona at VA Research is trying to organize a testing rig - if
> anyone can help from the Apache tuning side of things (Dean?  Cliff?
> Marc?) send him an email at chris@dibona.com.
> 
> Thanks!
> 
>         Brian

--
Andrew Finkenstadt (http://www.finkenstadt.com/andy/)
"I know the answer's in there, the server's just too busy!" --Anon

Re: Mindcraft, part II - anyone want to help?

Posted by Dan Kegel <da...@alumni.caltech.edu>.
Brian Behlendorf wrote:
> Mindcraft has a response to the criticisms out there - "OK, help us come
> up with a good benchmark".  Thus:
> 
> http://www.mindcraft.com/openbenchmark.html
> 
> Chris DiBona at VA Research is trying to organize a testing rig - if
> anyone can help from the Apache tuning side of things (Dean?  Cliff?
> Marc?) send him an email at chris@dibona.com.

What is the most appropriate mailing list for discussing
tuning and fixing Apache and Linux to do well in the 
next Mindcraft test?

For those who haven't been there yet, 
http://www.kegel.com/mindcraft_redux.html
mentions people doing serious Apache+Linux benchmarks,
the problems they're seeing,
and the patches they've developed to deal with them.

- Dan

Re: Mindcraft, part II - anyone want to help?

Posted by Manoj Kasichainula <ma...@io.com>.
On Sun, May 09, 1999 at 03:04:25PM +0000, Dan Kegel wrote:
> Manoj Kasichainula wrote:
> > I'm not the best person to answer this question, but I think the
> > server will only sit on the socket if no data arrives for 2 seconds
> > (because of old browser behavior), or when the client closes its
> > connection.
> 
> I doubt the server sits on the socket when the
> client closes its connection after it receives the FIN.

My sentence was worded backwards. The server sites on the socket
*until* 2 idle seconds or when the client closes the connection,
whichever comes first.

I'm interpreting the lingering_close() function in http_main.c

> I just heard that there was a bug in the Linux 2.2 kernel,
> fixed in 2.2.7, which caused a 200ms delay on connection startup
> and shutdown.

I was getting serious performance problems in my testing of the hybrid
server on 2.2.5 even with almost no server load (factor of 10 loss on
my little network at home). 2.2.7 fixed them for me. I think this is
the reason.

Unfortunately, Red Hat 6.0 ships with 2.2.5 right now.

-- 
Manoj Kasichainula - manojk at io dot com - http://www.io.com/~manojk/
"People who live in glass houses should get dressed with the lights
out." - Yakko Warner

Re: Mindcraft, part II - anyone want to help?

Posted by Dan Kegel <da...@alumni.caltech.edu>.
Manoj Kasichainula wrote:
> 
> On Wed, May 05, 1999 at 03:04:49AM +0000, Dan Kegel wrote:
> > In a benchmark like Mindcraft's, should Apache's MaxClients be set to
> > the physical number of client threads, or to a higher value?
> > Don't the server daemons sit around doing a lingering close
> > for some time after finishing each request?
> 
> I'm not the best person to answer this question, but I think the
> server will only sit on the socket if no data arrives for 2 seconds
> (because of old browser behavior), or when the client closes its
> connection.

I doubt the server sits on the socket when the
client closes its connection after it receives the FIN.
Otherwise we'd see massive stavation.

I just heard that there was a bug in the Linux 2.2 kernel,
fixed in 2.2.7, which caused a 200ms delay on connection startup
and shutdown.   Mindcraft observed a peak of 1000 connections/second.
A 200ms delay would result in 200 or so server processes tied up,
unable to do any work.  MaxClients was set to 288, and performance 
went to pot with >160 active clients.  Maybe 128 server processes
were tied up in the 200ms delay?

It would have been very interesting to see what would have
happened if Mindcraft had experimented with raising MaxClients
past 288.  It *shouldn't* make a difference, but then, the
TCP stack shouldn't have that 200ms delay, either.

- Dan

http://www.kegel.com/mindcraft_redux.html

Re: Mindcraft, part II - anyone want to help?

Posted by Manoj Kasichainula <ma...@io.com>.
On Wed, May 05, 1999 at 03:04:49AM +0000, Dan Kegel wrote:
> In a benchmark like Mindcraft's, should Apache's MaxClients be set to
> the 
> physical number of client threads, or to a higher value?
> Don't the server daemons sit around doing a lingering close
> for some time after finishing each request?

I'm not the best person to answer this question, but I think the
server will only sit on the socket if no data arrives for 2 seconds
(because of old browser behavior), or when the client closes its
connection.

I don't think setting MaxClients to an abnormally high value should
slow down the server at all.

-- 
Manoj Kasichainula - manojk at io dot com - http://www.io.com/~manojk/
"The universe is in fact made up of Fabio." - scientist on _Eek the Cat_

Re: Mindcraft, part II - anyone want to help?

Posted by Dan Kegel <da...@alumni.caltech.edu>.
Brian Behlendorf wrote:
> 
> Mindcraft has a response to the criticisms out there - "OK, help us come
> up with a good benchmark".  Thus:
> 
> http://www.mindcraft.com/openbenchmark.html
> 
> Chris DiBona at VA Research is trying to organize a testing rig - if
> anyone can help from the Apache tuning side of things (Dean?  Cliff?
> Marc?) send him an email at chris@dibona.com.

I've been in touch with Mindcraft, and am collecting my own notes
on tuning issues at http://www.kegel.com/mindcraft_redux.html
It's interesting reading, especially
http://bugs.apache.org/index/full/4268,
which shows the same kind of "Apache gets wedged in a slow state"
behavior Mindcraft found.

Could I bother you folks for a tuning question?  
In a benchmark like Mindcraft's, should Apache's MaxClients be set to
the 
physical number of client threads, or to a higher value?
Don't the server daemons sit around doing a lingering close
for some time after finishing each request?

Thanks,
Dan