You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Java Rab <ja...@gmail.com> on 2006/08/01 11:37:45 UTC

mod_jk connection_pool_size property

 I have setup load balancing between Apache 1.3.33 and Tomcat 4.0.6 using
the mod_jk connector. Initial tests were fine and the balancing seemed to
work a treat. However, with any load on the server, I was seeing 503 errors
reporting server unavailability. To resolve this issue, I set the following
property in the workers.properties file: connection_pool_size=1000 which has
resolved the immediate problem and the system can now process a heavy load
without failure.

The only thing that troubles me, that's preventing me from claiming success
is the following note in red highlighting in the apache documentation, which
can be viewed online at
http://tomcat.apache.org/connectors-doc/config/workers.html. Extract: "Do
not use connection_pool_size with values higher then 1 on *Apache 2.xprefork
* or *Apache 1.3.x*!". Can anyone explain the reason why this shouldnt be
done? My system seems to work fine, but I'd be nervous going live with the
configuration described above, without first understanding the warning in
the apache docs.

Any help will be great!

JR

Re: mod_jk connection_pool_size property

Posted by Rainer Jung <ra...@kippdata.de>.
Since you are using Apache 1.3: By theory setting the value to > 1 
should not be necessary. To understand what's going on: could you 
increase JkLogLevel to trace and send us parts of the output around a 
request producing a 503 error?

Java Rab wrote:
> I have setup load balancing between Apache 1.3.33 and Tomcat 4.0.6 using
> the mod_jk connector. Initial tests were fine and the balancing seemed to
> work a treat. However, with any load on the server, I was seeing 503 errors
> reporting server unavailability. To resolve this issue, I set the following
> property in the workers.properties file: connection_pool_size=1000 which 
> has
> resolved the immediate problem and the system can now process a heavy load
> without failure.
> 
> The only thing that troubles me, that's preventing me from claiming success
> is the following note in red highlighting in the apache documentation, 
> which
> can be viewed online at
> http://tomcat.apache.org/connectors-doc/config/workers.html. Extract: "Do
> not use connection_pool_size with values higher then 1 on *Apache 
> 2.xprefork
> * or *Apache 1.3.x*!". Can anyone explain the reason why this shouldnt be
> done? My system seems to work fine, but I'd be nervous going live with the
> configuration described above, without first understanding the warning in
> the apache docs.
> 
> Any help will be great!
> 
> JR
> 

-- 
kippdata informationstechnologie GmbH
Bornheimer Str. 33a
53111 Bonn

Tel.: 0228/98549-0
Fax:  0228/98549-50
www.kippdata.de
=======================
kippdata informationstechnologie GmbH
Bornheimer Str. 33a
D-53111 Bonn

Tel.: +49/0228/98549-0
Fax:  +49/0228/98549-50
www.kippdata.de

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: mod_jk connection_pool_size property

Posted by Mladen Turk <ml...@jboss.com>.
Java Rab wrote:
> I have setup load balancing between Apache 1.3.33 and Tomcat 4.0.6 using
> the mod_jk connector. Initial tests were fine and the balancing seemed to
> work a treat. However, with any load on the server, I was seeing 503 errors
> reporting server unavailability. To resolve this issue, I set the following
> property in the workers.properties file: connection_pool_size=1000 which 
> has
> resolved the immediate problem and the system can now process a heavy load
> without failure.
> 
> The only thing that troubles me, that's preventing me from claiming success
> is the following note in red highlighting in the apache documentation, 
> which
> can be viewed online at
> http://tomcat.apache.org/connectors-doc/config/workers.html. Extract: "Do
> not use connection_pool_size with values higher then 1 on *Apache 
> 2.xprefork
> * or *Apache 1.3.x*!". Can anyone explain the reason why this shouldnt be
> done? My system seems to work fine, but I'd be nervous going live with the
> configuration described above, without first understanding the warning in
> the apache docs.
> 
> Any help will be great!
> 

Apache 1.3 and Apache 2.x-prefork create a separate child process for
each client connection, meaning that if you have default
250 MaxClients, you can end up with MaxClients * connection_pool_size
connections to the Tomcat, that would in your case be 250000.
Pretty high number, right :)

With worker mpm the connection_pool_size defaults to ThreadsPerChild,
that in the final gives the MaxClients connections to the Tomcat.
So the default value for connection_pool_size is always ThreadsPerChild
that with prefork mpm is by design always 1.

I suggest that you Google for worker/prefork mpm theory and usability.
Lots of OS vendors simply choose prefork mpm without any analysis,
simply presuming its more safe then any semi threaded model.

Regards,
Mladen.

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org