You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by michael wimmer <m....@ecom-it.at> on 2002/08/12 23:25:05 UTC

tomcat performance and load capability

hi all,
 
we are trying to migrate our development, at least partually, from
coldfusion to jsp. Our first project is about to start and we are now a
little bit concerned about the performance. 
 
It is a simple promotion, consisting of 6 JSP pages with access to a
MySql database. DB connectivity is implemented with mm.mysql driver and
protomatter for connection pooling.
 
Since the the project will be promoted via radio spots, we estimate up
two 30.000 hits per day with possibly extreme peaks after the spots have
been broadcasted.
 
I used JMeter for testing and I came up with the insight that tomcat has
problems if I start more than 75 concurrent threads. (e. q. 100 users,
going for two rounds ended up with maybe half as many entries in the
database as there were supposed to be). Increasing the 'maxProcessors'
parameter for the connector did not solve the problem, tomcat (version
4.1.8) still stopped at 75 threads only viewing now the higher number in
the error message 'servlet status'. This problem did not occur when I
ran the same project in the resin 2.1.4 container.
 
My questions are:
- Is Tomcat capable of that load? (Especially for the peaks, I am not
concerned about the overall load).
 
- Our provider has uttered that running it on two machines (Solaris),
one containing the apache web server, the other server hosting tomcat
would be the way to do it. Since only a few popup's are HTML and all
other pages have to be handled by Tomcat anyway (I would say more than
80% off all request are for JSP's), I am concerned if it really is a
good idea to have apache forwarding all pages to a different computer.
Since we HAVE to use our providers shared MySql, the database server was
not part of my performance consideration.
 
- Which version of Tomcat is recommended (4.0.4 or 4.1.8)?
 
- Which JDK (1.3 or 1.4) works best with Tomcat.
 
- Any hints / tips for optimizing the configuration would be highly
appreciated.
 
 
Best regards,
 
Michael Wimmer
mailto:m.wimmer@ecom-it.at

Re: tomcat performance and load capability

Posted by "Craig R. McClanahan" <cr...@apache.org>.

On Mon, 12 Aug 2002, Michael Locasto wrote:

> Date: Mon, 12 Aug 2002 17:58:23 -0400
> From: Michael Locasto <lo...@cs.columbia.edu>
> Reply-To: Tomcat Users List <to...@jakarta.apache.org>
> To: Tomcat Users List <to...@jakarta.apache.org>
> Subject: Re: tomcat performance and load capability
>
>
> >
> > - Our provider has uttered that running it on two machines (Solaris),
> > one containing the apache web server, the other server hosting tomcat
> > would be the way to do it. Since only a few popup's are HTML and all
> > other pages have to be handled by Tomcat anyway (I would say more than
> > 80% off all request are for JSP's), I am concerned if it really is a
> > good idea to have apache forwarding all pages to a different computer.
> > Since we HAVE to use our providers shared MySql, the database server was
> > not part of my performance consideration.
>
> having apache handle static content isn't a bad idea anyway.
>
> > - Which version of Tomcat is recommended (4.0.4 or 4.1.8)?
>
> 4.0.4 is the current "production quality" release, but the 4.1.x (4.1.9
> was just released) releases will probably give you better performance, as
> well as running with the jdk1.4. Many folks on this list have reported
> good things while running 4.1.x
>

Among other things, 4.1.x includes a completely rewritten JSP page
compiler.  One of the primary concerns was improving the performance of
the generated code for a JSP page, especially for pages that use lots of
custom tags (where 8x to 10x performance improvements have been observed).

That being said, there are many other critical success factors, including
proper configuration (75 just happens to be the default maximum number of
threads on the HTTP connector -- is that coincidental?) to which OS/JVM
combination you are running (the maximum simultaneous thread counts for
different combinations vary widely) to how fast your database accesses
run.  Performance tuning is almost always going to be very dependent on
the particular mix of technologies and behavior in *your* application.

> If you are concerned with relatively heavy load, you may wish to consider
> multiple Tomcat instances.
>
> Regards,
> Michael
>
>

Craig


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: tomcat performance and load capability

Posted by Michael Locasto <lo...@cs.columbia.edu>.
>
> - Our provider has uttered that running it on two machines (Solaris),
> one containing the apache web server, the other server hosting tomcat
> would be the way to do it. Since only a few popup's are HTML and all
> other pages have to be handled by Tomcat anyway (I would say more than
> 80% off all request are for JSP's), I am concerned if it really is a
> good idea to have apache forwarding all pages to a different computer.
> Since we HAVE to use our providers shared MySql, the database server was
> not part of my performance consideration.

having apache handle static content isn't a bad idea anyway.

> - Which version of Tomcat is recommended (4.0.4 or 4.1.8)?

4.0.4 is the current "production quality" release, but the 4.1.x (4.1.9
was just released) releases will probably give you better performance, as
well as running with the jdk1.4. Many folks on this list have reported
good things while running 4.1.x

If you are concerned with relatively heavy load, you may wish to consider
multiple Tomcat instances.

Regards,
Michael




--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>