After MaxClient Connection, What will happend to the Client Connection Request?

After MaxClient Connection, What will happend to the Client Connection Request?

Post by Saravanakumar Annamalaisam » Tue, 09 May 2000 04:00:00



Hey Everyone,

We are using the Apache Server.  We set the MaxClient value to 256.
In that case, Whats going to happend after 256 Client Connections are
established in the server?.

Will the server starts dropping the Connection?.  I tried to test that out.
But I looks like the server stops dropping the connection somewhere around
380 Connection.?

In this case, What happend to those (380-256) Connections?.  And the request
that has sent after MaxClient has been reached, was having a large latency.

Any Clues?

Thanks,
Saro

 
 
 

After MaxClient Connection, What will happend to the Client Connection Request?

Post by Greg Cop » Wed, 10 May 2000 04:00:00



> Hey Everyone,

> We are using the Apache Server.  We set the MaxClient value to 256.
> In that case, Whats going to happend after 256 Client Connections are
> established in the server?.

> Will the server starts dropping the Connection?.  I tried to test that out.
> But I looks like the server stops dropping the connection somewhere around
> 380 Connection.?

> In this case, What happend to those (380-256) Connections?.  And the request
> that has sent after MaxClient has been reached, was having a large latency.

> Any Clues?

A clue (I think) they are being queued in the OS's (network) buffers -
but there comes a point where they are full and pop, the OS drops it!

When setting max clients to over 256 you will get an warning that 256 is
hardcoded - change the value where it says and recomplie (from fresh
sources / make clean) etc ... and given enough memory and everything
should be fine.

Greg Cope

- Show quoted text -

Quote:

> Thanks,
> Saro


 
 
 

After MaxClient Connection, What will happend to the Client Connection Request?

Post by Saravanakumar Annamalaisam » Wed, 10 May 2000 04:00:00


Thanks Greg,

So, Does it depend on the OS whether to buffer the connection or not after
MaxClient?.  Is there a parameter in Apache with which we can control this
Queue length?

Currently we are using Solaris Box for the Apache Server.
Is there any limit in OS Connection Queue Length?  If it is, then
Is there a way to re-configure them?

Thanks in advance,
-Saravana



> > Hey Everyone,

> > We are using the Apache Server.  We set the MaxClient value to 256.
> > In that case, Whats going to happend after 256 Client Connections are
> > established in the server?.

> > Will the server starts dropping the Connection?.  I tried to test that
out.
> > But I looks like the server stops dropping the connection somewhere
around
> > 380 Connection.?

> > In this case, What happend to those (380-256) Connections?.  And the
request
> > that has sent after MaxClient has been reached, was having a large
latency.

> > Any Clues?

> A clue (I think) they are being queued in the OS's (network) buffers -
> but there comes a point where they are full and pop, the OS drops it!

> When setting max clients to over 256 you will get an warning that 256 is
> hardcoded - change the value where it says and recomplie (from fresh
> sources / make clean) etc ... and given enough memory and everything
> should be fine.

> Greg Cope

> > Thanks,
> > Saro

 
 
 

After MaxClient Connection, What will happend to the Client Connection Request?

Post by Greg Cop » Thu, 11 May 2000 04:00:00



> Thanks Greg,

> So, Does it depend on the OS whether to buffer the connection or not after
> MaxClient?.  Is there a parameter in Apache with which we can control this
> Queue length?

No it is OS dependent - and is usually non configuarble IIRC - and is
usally set aside from spare RAM.

Quote:> Currently we are using Solaris Box for the Apache Server.
> Is there any limit in OS Connection Queue Length?  If it is, then
> Is there a way to re-configure them?

pass

> Thanks in advance,
> -Saravana




> > > Hey Everyone,

> > > We are using the Apache Server.  We set the MaxClient value to 256.
> > > In that case, Whats going to happend after 256 Client Connections are
> > > established in the server?.

> > > Will the server starts dropping the Connection?.  I tried to test that
> out.
> > > But I looks like the server stops dropping the connection somewhere
> around
> > > 380 Connection.?

> > > In this case, What happend to those (380-256) Connections?.  And the
> request
> > > that has sent after MaxClient has been reached, was having a large
> latency.

> > > Any Clues?

> > A clue (I think) they are being queued in the OS's (network) buffers -
> > but there comes a point where they are full and pop, the OS drops it!

> > When setting max clients to over 256 you will get an warning that 256 is
> > hardcoded - change the value where it says and recomplie (from fresh
> > sources / make clean) etc ... and given enough memory and everything
> > should be fine.

> > Greg Cope

> > > Thanks,
> > > Saro

 
 
 

After MaxClient Connection, What will happend to the Client Connection Request?

Post by Saravanakumar Annamalaisam » Thu, 11 May 2000 04:00:00


Thanks..

Are we talking about the LISTEN QUEUE in the TCP Stack?.

-Saravana



> > Thanks Greg,

> > So, Does it depend on the OS whether to buffer the connection or not
after
> > MaxClient?.  Is there a parameter in Apache with which we can control
this
> > Queue length?

> No it is OS dependent - and is usually non configuarble IIRC - and is
> usally set aside from spare RAM.

> > Currently we are using Solaris Box for the Apache Server.
> > Is there any limit in OS Connection Queue Length?  If it is, then
> > Is there a way to re-configure them?

> pass

> > Thanks in advance,
> > -Saravana




> > > > Hey Everyone,

> > > > We are using the Apache Server.  We set the MaxClient value to 256.
> > > > In that case, Whats going to happend after 256 Client Connections
are
> > > > established in the server?.

> > > > Will the server starts dropping the Connection?.  I tried to test
that
> > out.
> > > > But I looks like the server stops dropping the connection somewhere
> > around
> > > > 380 Connection.?

> > > > In this case, What happend to those (380-256) Connections?.  And the
> > request
> > > > that has sent after MaxClient has been reached, was having a large
> > latency.

> > > > Any Clues?

> > > A clue (I think) they are being queued in the OS's (network) buffers -
> > > but there comes a point where they are full and pop, the OS drops it!

> > > When setting max clients to over 256 you will get an warning that 256
is
> > > hardcoded - change the value where it says and recomplie (from fresh
> > > sources / make clean) etc ... and given enough memory and everything
> > > should be fine.

> > > Greg Cope

> > > > Thanks,
> > > > Saro

 
 
 

After MaxClient Connection, What will happend to the Client Connection Request?

Post by Greg Cop » Fri, 12 May 2000 04:00:00



> Thanks..

> Are we talking about the LISTEN QUEUE in the TCP Stack?.

possibly ?

Greg

Quote:

> -Saravana

<snippage>
 
 
 

1. : One socket connection, several client requests?

I have a TCP/IP application where a client machine may be
sending several (100 a minute) separate small requests in
the form of 20 bytes to a server across the network.  Each
request requires only one short response, and may wait five
or more seconds for it.

I'm currently using a connection-oriented server.  For each
new request, the client connect()s to the server, the server
fork()s, a new socket descriptor is returned, and the client
and server interact over the new socket descriptor...

It was suggested that due to the volume and frequency of
requests, that the number of connect()s required is
not efficient.  

It was then suggested that we could send several requests
across an already open connection, and only open a new socket
when the number of requests per socket reached a predefined
number, say five.

The client processes would need to keep track of which response
goes with which request using a request id in the request,
which the server would copy and pass back with the response.
The server would still fork a new process for each request,
and each of those processes would be able to write on the
one socket descriptor.

Does this sound reasonable?  The suggestion was made to
reduce the connect()s, and improve response times for clients,
who wouldn't be waiting the extra time that it takes for
connections to be established.

However, I have never heard of this being done before, and
I'm just a bit skeptical.  

If anyone does respond, feel free to refer to any of Richard
Stevens' books.  

--
+---------------+------------------------------------------------+

+               +------------------------------------------------+
+               | Insert something witty here                    |
+---------------+------------------------------------------------+

2. Eliant 820 8mm on Solaris

3. once server reaches MaxClients setting, does this child server still accept request as normal?

4. Excessive heat and temperatures in server room

5. Cannot accept chooser connection Software caused connection abort

6. samba shares + M$

7. RH5.1 PPP connection: PPP connection persists, telnet session times out

8. Any one run msql on NT as a service?

9. Limit maximum TCP connections for NAT connection

10. internet connection dies sometims after usenet connection times out

11. cable connection died - can't do connection anymore?

12. FTP error: Can't build data connection: Connection refused.

13. How can I route to a cable modem connection AND a DSL connection?