tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From André Warnier>
Subject Re: Missing files for mod_jk
Date Fri, 05 Feb 2010 17:15:36 GMT
Caldarale, Charles R wrote:
>> From: Alexander Diedler []
>> Subject: AW: Missing files for mod_jk
>> Sorry, it is 1024 KB, sure, just to fast tipped into the keyboard.
> So again, why did you change it from the default?
>> worker.list= worker3,loadbalancer,jkstatus
> I see no declarations for worker3.
>> ok, I adjust maxThreads to 1000
> I'm certainly not an expert in configuring mod_jk, but don't you need to keep the AJP
<Connector> maxThreads setting in sync with the worker.worker?.connection_pool_size
setting?  Picking arbitrary values will get you into trouble.
 From the mod_jk docs ( :

connection_pool_size :
Usually this is the same as the number of threads per web server 
process. JK will discover this number for the Apache web server 
automatically and set the pool size to this value.

Under Windows, Apache has a single child, multi-threaded.
In Alexander's configuration, the maximum number of threads for Apache 
is set at 1920 (?).
That in itself already looks to me like a big number, but I don't know 
the real load of the server.
The question here is whether ALL requests going through Apache get 
passed through to Tomcat via mod_jk, and whether there are requests to 
Tomcat that go directly to Tomcat without going through Apache.

If all requests go through Apache, and all of them then go from Apache 
to Tomat, then I would say that the number of threads in Apache should 
be set to roughly the number of expected maximum concurrent requests, 
and that the maxThreads of the AJP Connector in Tomcat should be set to 
the same number.
That is, the total number of threads in the two Tomcats, because the 
Apache/mod_jk is balancing between them.
And also because each Apache thread will make maximum one connection to 
one Tomcat thread. (Each Apache thread + connection + Tomcat thread may 
process more than one request however, if there are KeepAlive 
connections involved).

Then I would let this run for a while, and examine the Apache logs, and 
the mod_jk log at the Apache level.  Either one of them will record 
whether there are cases were the threads setting is too low, and 
requests are being turned away.

Also, assuming that these parameters :
Initial memory pool: 256 MB
Maximum memory pool : 1024 MB
are actually equivalent to -Xms and -Xmx settings of the JVM, I would 
set them equal both to the same value, to gain some efficiency.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message