tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Rees <>
Subject Re: parallel webapp initialization
Date Tue, 24 Jan 2012 21:01:02 GMT
On Mon, Jan 23, 2012 at 11:53 PM, Pid * <> wrote:
> On 23 Jan 2012, at 21:12, David Rees <> wrote:
>> On Tue, Oct 11, 2011 at 6:42 AM, Mark Thomas <> wrote:
>>> I have added a patch based on the previous patches that adds:
>>> - threaded start/stop for Contexts
>>> - threaded start/stop for Hosts
>>> - threaded deployment
>>> Control over the number of threads is via server.xml and/or JMX. This
>>> can be changed dynamically.
>>> Review, feedback, testing etc. welcome.
>>> With 4 threads rather than the current 1 (on a 8-core machine), I saw a
>>> 20-25% improvement in start time with a large number of Contexts that
>>> all start quickly. I'd expect to see better results in situations where
>>> 1 few Contexts start slowly but most are quick.
>> Resurrecting an old thread, but I've started using this in Tomcat
>> 7.0.25 with good results - have a Tomcat instance used for testing
>> with a couple dozen contexts that take a while to load each, but with
>> startStopThreads bumped up it reduces startup time from 60 seconds to
>> 20 seconds using all available CPU cores.  Very helpful!
> That's great - and thanks for letting us know.
> If you have time, I think it would be interesting to know your
> application sizes, individual startup time and how many
> startStopThreads you are using.

On this example there's about 30 webapps, each war file ranges between
30-60MB.  Single threaded startup, each application takes about 2
seconds to start up.  This is on a warm restart, webapps already
deployed, cold restarts are slower if the server has to read from

The system has 8 CPU cores, Opteron 2378 CPU.  Going beyond 4
startStopThreads for the host where the webapps are deployed doesn't
speed things up much more as it appears that the webapps can use up to
2 cores when initializing as seen in single threaded startup mode.

Going to 6 threads pretty much maxed it out, but I've left it set to 7.


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

View raw message