473,574 Members | 2,946 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Tomcat 4.1.x Performance advice - 6 servers for 4000 users?

Hi all, hopefully someone can offer some sagely advice regarding
Production use of Jakarta's Tomcat.
First, some brief background.
My company have a servlet application that connects to a MySQL
database.
The servlet is deployed on two seperate win2k servers (Access to the
tomcat servers is via DNS round robin load balancing).

The database is on a another win2k server.

These three servers are used for no other purpose than the servlet
application.

Three or four times a year, 4000 employees are required to access the
servlet application across a time period of 14 days, each user may
access the servlet many times during this period - placing a lot of
load on the network, and the servers.

Historically response time has been a big issue.
Assume Network Capacity cannot be improved...:-(

The tomcat/servlet solution was provided by a third party vendor.

The vendor is now suggesting we increase the webserver count from two
Windows2K Server machines to a total of SIX, all running Tomcat.
Personally, I think this is overkill, and the vendor is simply pushing
boxes at the problem as they do not really know how to tune tomcat.

I don't want to get into a debate about the various merits or not of
Linux/Windows, but I do want to ask, if anyone knows of any links to
benchmarks that show some comparison between tomcat on Win2K and
Linux? and even some ballpark figures of typical users/servers.

This application is actually quite simple, there is no heavy
processing on the servlet side.

I also recall some time back, that tomcat on Windows was not
recommended for Production use, but I can't recall where I read that,
or even if I read it at all!!
Now, while I know that it runs fine on Win2K for many, I am simply
interested if anyone has any links to articles that may offer a more
informed opinion than mine.

Any advice is really welcomed, thanks in advance.

Nmac
:-)
Jul 17 '05 #1
5 4019
"nmac" <nm*****@hotmai l.com> wrote in message
news:44******** *************** ***@posting.goo gle.com...
[snip]
Three or four times a year, 4000 employees are required to access the
servlet application across a time period of 14 days, each user may
access the servlet many times during this period - placing a lot of
load on the network, and the servers.
What does the "hits/day" profile look like? Do the majority of those 4,000
employees interact with the application at the start of the 14 days, near
the end, or semi-uniform across the time span?
The tomcat/servlet solution was provided by a third party vendor.
Since nearly all performance problems (IMHO) are application-related and not
infrastructure-related, is the vendor interested in profiling and tuning
their application. I have seen a number of bottlenecks that arise due to
design decisions in the application.
The vendor is now suggesting we increase the webserver count from two
Windows2K Server machines to a total of SIX, all running Tomcat.
Personally, I think this is overkill, and the vendor is simply pushing
boxes at the problem as they do not really know how to tune tomcat.
This *sounds* like the vendor is just throwing horsepower at the problem.
What kind of hardware are they suggesting for these machines?
I don't want to get into a debate about the various merits or not of
Linux/Windows, but I do want to ask, if anyone knows of any links to
benchmarks that show some comparison between tomcat on Win2K and
Linux? and even some ballpark figures of typical users/servers.
Personally, I have supported a web application for 15,000 (internal) and
1,000 (external) users running on a single instance of Tomcat. Yes, this
was on Solaris, but not on anything you could consider 'extreme' hardware.
This application is actually quite simple, there is no heavy
processing on the servlet side.
I'm assuming that you have tested this theory out with network traces, etc.?
Sometimes, even simple operations are implemented with excessive waste in
terms of transactions.
I also recall some time back, that tomcat on Windows was not
recommended for Production use, but I can't recall where I read that,
or even if I read it at all!!
Now, while I know that it runs fine on Win2K for many, I am simply
interested if anyone has any links to articles that may offer a more
informed opinion than mine.


It's true that Tomcat is not the fastest cat on the block. BUT, it's easy
to use and relatively stable, so I think the trade-off is not all that bad
in reality, unless you have some super-performance critical requirements. I
don't have any articles I can point to that would provide any solid
information, just my own experience.
--
Dave Ockwell-Jenner
Solar Nexus Solutions
http://www.solar-nexus.com/
Jul 17 '05 #2
Tomcat is the official JSP/Servlet reference implementation, and as
such (I believe) isn't recommended for production use on any platform.
I've had good luck running Tomcat, though, and most people just
ignore this.

I've heard that under heavy load, Tomcat doesn't perform very well
(this doesn't surprise me because Apache is concerned with correctly
implementing the features of the spec, not optimizing performance). I
would check out Resin or Jetty, both of which are supposed to be solid
performers.

I would also do some testing of your application and determine the
bottle neck. If the application logic in Tomcat is so simple, is the
database bogging down?

-Nathan

nm*****@hotmail .com (nmac) wrote in message news:<44******* *************** ****@posting.go ogle.com>...
Hi all, hopefully someone can offer some sagely advice regarding
Production use of Jakarta's Tomcat.
First, some brief background.
My company have a servlet application that connects to a MySQL
database.
The servlet is deployed on two seperate win2k servers (Access to the
tomcat servers is via DNS round robin load balancing).

The database is on a another win2k server.

These three servers are used for no other purpose than the servlet
application.

Three or four times a year, 4000 employees are required to access the
servlet application across a time period of 14 days, each user may
access the servlet many times during this period - placing a lot of
load on the network, and the servers.

Historically response time has been a big issue.
Assume Network Capacity cannot be improved...:-(

The tomcat/servlet solution was provided by a third party vendor.

The vendor is now suggesting we increase the webserver count from two
Windows2K Server machines to a total of SIX, all running Tomcat.
Personally, I think this is overkill, and the vendor is simply pushing
boxes at the problem as they do not really know how to tune tomcat.

I don't want to get into a debate about the various merits or not of
Linux/Windows, but I do want to ask, if anyone knows of any links to
benchmarks that show some comparison between tomcat on Win2K and
Linux? and even some ballpark figures of typical users/servers.

This application is actually quite simple, there is no heavy
processing on the servlet side.

I also recall some time back, that tomcat on Windows was not
recommended for Production use, but I can't recall where I read that,
or even if I read it at all!!
Now, while I know that it runs fine on Win2K for many, I am simply
interested if anyone has any links to articles that may offer a more
informed opinion than mine.

Any advice is really welcomed, thanks in advance.

Nmac
:-)

Jul 17 '05 #3
Here's some interesting data that may be of use to you:

http://www.webperformanceinc.com/library/ServletReport/

From my experience, I believe based on your load and load balancing
scheme that Tomcat will not be your bottleneck, especially since the
Servlet you are using does not do any major processing. These days,
using Tomcat for a production environment isn't an absolute no-no, in
fact, quite a few folks find it performs quite well.

What I would pay more attention to is the database, specifically the
manner by which the connections to the database are made. MySQL is
pretty good....Oracle or MS SQL 2000 would perform better, but
realistically that ship has likely sailed at this point. Outside of
using a better performing database, I would make sure that connections
to the database are pooled, since creating a new connection to the
database for every query is likely to be the most memory intensive
process of your application. Moving from creating connections on
demand to pulling connections from a pool of existing connections will
result in a dramatic performance enhancement.

Good luck, tomcat has come a long way in the past couple years and I
rely on it exclusively....

nm*****@hotmail .com (nmac) wrote in message news:<44******* *************** ****@posting.go ogle.com>...
Hi all, hopefully someone can offer some sagely advice regarding
Production use of Jakarta's Tomcat.
First, some brief background.
My company have a servlet application that connects to a MySQL
database.
The servlet is deployed on two seperate win2k servers (Access to the
tomcat servers is via DNS round robin load balancing).

The database is on a another win2k server.

These three servers are used for no other purpose than the servlet
application.

Three or four times a year, 4000 employees are required to access the
servlet application across a time period of 14 days, each user may
access the servlet many times during this period - placing a lot of
load on the network, and the servers.

Historically response time has been a big issue.
Assume Network Capacity cannot be improved...:-(

The tomcat/servlet solution was provided by a third party vendor.

The vendor is now suggesting we increase the webserver count from two
Windows2K Server machines to a total of SIX, all running Tomcat.
Personally, I think this is overkill, and the vendor is simply pushing
boxes at the problem as they do not really know how to tune tomcat.

I don't want to get into a debate about the various merits or not of
Linux/Windows, but I do want to ask, if anyone knows of any links to
benchmarks that show some comparison between tomcat on Win2K and
Linux? and even some ballpark figures of typical users/servers.

This application is actually quite simple, there is no heavy
processing on the servlet side.

I also recall some time back, that tomcat on Windows was not
recommended for Production use, but I can't recall where I read that,
or even if I read it at all!!
Now, while I know that it runs fine on Win2K for many, I am simply
interested if anyone has any links to articles that may offer a more
informed opinion than mine.

Any advice is really welcomed, thanks in advance.

Nmac
:-)

Jul 17 '05 #4
Dave Thanks for taking the time to respond to my post.
In answer to your queries:
[my snip]
Three or four times a year, 4000 employees are required to access the
servlet application across a time period of 14 days, each user may
access the servlet many times during this period - placing a lot of
load on the network, and the servers.
[your snip]
What does the "hits/day" profile look like? Do the majority of those
4,000
employees interact with the application at the start of the 14 days,
near
the end, or semi-uniform across the time span?

[nmac says:]
The hits/day is relatively uniform, peaking towards the end of each
period.

[my snip]
The tomcat/servlet solution was provided by a third party vendor.
[your snip]
Since nearly all performance problems (IMHO) are application-related
and not
infrastructure-related, is the vendor interested in profiling and
tuning
their application. I have seen a number of bottlenecks that arise due
to
design decisions in the application.

[nmac says:]
Personally, I don't think the vendor is capable of tuning the
application. I have begun to look into the config on the tomcat
servers, and will look into connection pooling for the DB connect if
none is currently used.
I tend to agree that it is application/config related. Throwing boxes
at the problem seems to be a blatant attempt to get more sales.
[my snip]
The vendor is now suggesting we increase the webserver count from two
Windows2K Server machines to a total of SIX.
[your snip]
This *sounds* like the vendor is just throwing horsepower at the
problem.
What kind of hardware are they suggesting for these machines?

[nmac says:]
Agreed! Hardware are Dual P4 servers, 1GBram. SCSI RAID 5 (I would use
0+1 personally!)

[my snip:]
I don't want to get into a debate about the various merits or not of
Linux/Windows...
[your snip:]
Personally, I have supported a web application for 15,000 (internal)
and
1,000 (external) users running on a single instance of Tomcat...

[nmac says:]
Well, this is where I am suspicous that the vendor has their sales
targets at heart. I too have run applications on tomcat on both
Solaris and Linux, with massive hits/sec requirements, and user
audiences in their thousands, with no real performance problems.
[your snip]
I'm assuming that you have tested this theory out with network traces,
etc.?
Sometimes, even simple operations are implemented with excessive waste
in
terms of transactions.

[nmac says:]
I am working on getting more detail on the architecture, as I have
been pulled into this issue, and yes, traces are in my plans, unless
of course the architecture is obviously a mess....which I think it may
be...e.g no private segment between the WS and DB Servers....shee sh.

[my snip:]
I also recall some time back, that tomcat on Windows was not
recommended for Production use...

[your snip:]
I don't have any articles I can point to that would provide any solid
information, just my own experience.

[nmac says:]
No worries, really grateful for your insight, suggestions and
thoughts, thanks again.
Watch this space!!
Cheers, Nmac.
:-)
Jul 17 '05 #5
Cheers Nathan and Steve, really grateful for the ideas, insight and
the link!
I'll keep digging, and if anything rears its head will update the
thread. Very grateful.
nmac:-)
Jul 17 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
1435
by: Subhodini Fernandes | last post by:
I know this is a very general question - but is there any way I can improve the performance of Tomcat (3.3.1) on Solaris ? We currently have around 150 users connecting to Tomcat on a Solaris 8 server and the performance is far from ideal. I have read about tomcat 4.1 being much faster than 3.3.1 but since this is a production server, I...
5
37988
by: D E | last post by:
When using my web application manager (http://localhost:8080/admin) I forgot my password. Is there an XML file i can look at to remember/obtain (possibly even set). Thanks
5
1731
by: Steve_CA | last post by:
Hello all, I've been recruited to assist in diagnosing and fixing a performance problem on an application we have running on SQL Server 7. The application itself is third party software, so we can't get at the source code. It's a Client Management system, where consultants all over the country track their client meetings, results, action...
3
1578
by: MikeH | last post by:
I have the weirdest problem with an Access 97 database... The application comprises the usual front-back split database. It's built around Access 97 and had been running without serious problems for around seven years. The back-ends are replicated across two servers (althugh I don't think this is a replication problem). Around two weeks...
1
1205
by: Jolly Student | last post by:
Dear Colleagues: Thank you for taking the time to read this - I recently posted here with regards to what was possible with .NET. I have been working as a systems engineer for about fifteen years now. My
9
1758
by: cow3 | last post by:
Is there anyone who can help me with this: I have written a fairly complicated vb application of hydrological model that does a lot of number crunching. The model creates a set of object variables before entering the main loop and then main calculations are done within the main loop using the object variables previously created. The...
4
13590
by: Edward V. Berard | last post by:
People, I am having problems developing Java applications on a Mac using Eclipse, MyEclipse, and Tomcat 5.5+. My current configuration: Mac OS X (10.4.5) Eclipse (3.1+) MyEclipse (4.0+)
5
2467
by: mjan | last post by:
Hello, could you please advice on how to measure replication performance in Oracle, DB2 & MS SQL Server RDBMS installed in Windows servers ? I've got two servers with databases installed and configured, I prepared set of data using DBGEN from TPC and I already imported them into databases.Also, I configured the replication. Now I have to...
7
2564
by: Michael D. Ober | last post by:
When calling Enqueue, the internal array may need to be reallocated. My question is by how much? In the old MFC array classes, you could tell MFC how many additional elements to add to the array when it needed to reallocate, which greatly boosted performance relative to adding 1 element at a time. Thanks, Mike Ober.
0
7805
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main...
0
7726
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language...
0
8237
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that...
1
7817
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For...
0
8098
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
0
5301
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert...
0
3752
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1341
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
1060
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.