André Warnier wrote:
Ashkan Rahmani wrote:
Hi,
Now I have a windows 2003 server and a Tomcat 6.x on it.
Our application has many many parts and it's very big.
Actually we are not happy with tomcat performance, (We are working very
hard on developing that software and improving
performance) .
We want to improve application performance (working on it now) and
tomcat
(by tuning and we are doing now and using latest stable version) and
finally OS, for this we want to remove (damn) windows and come back to
centos 6 and maybe some hardware upgrade.
My question from you is: is here anyone have some experience with
tomcat on
windows and Linux which running same things? which has better
performance?
Ashkan,
I am not a fan of Windows myself, for various reasons.
But,
1) there is no reason, in principle, for Tomcat to be slower on Windows
than on Linux, given comparable system resources.
I believe that on this list, there are many people using Tomcat under
Windows, with satisfactory results.
2) given that you are apparently having performance problems, the order
of probability for where these problems are happening is :
- 94% : your application
- 5% : a server misconfiguration, in the sense that you are not giving
the Java JVM under which Tomcat is running, appropriate resources to run
your application
- 1% : all the other factors (including OS, hardware etc..)
3) nobody here knows your application. So it belongs to you to identify
where you are having performance issues. If you have some specific
questions about something which you think is strange behaviour in/by
Tomcat, then come here with these specific questions.
Otherwise the help which anyone can provide is very limited.
4) "we are not happy with tomcat performance" and "We want to improve
application performance" are phrases which do not mean anything by
themselves (just like "it does not work"). If you come back here to ask
for help, you should provide some specifics or hard figures. Otherwise,
again, nobody will be able to help.
---------------
actually I'm not asking about application or tomcat.
I'm asking, Is there any meaning full performance difference between same
application on tomcat with same configuration on windows and linux (centos
6)?
---------------
Please respond to the list, not to the private address unless specifically
asked to do so.
And you got one answer to that, see (1) above.
Think of it this way :
The process which is actually running when you run Tomcat, is a Java JVM. And the Java
JVM runs Tomcat.
There exist several JVM versions, for Windows or Linux or other platforms. They are made
by the same people, and one main purpose of a JVM is to hide the platform differences, so
that Java applications can run unchanged, under any of these platforms.
The Java JVM developers work very hard to optimise each JVM for the platform under which
it runs. I am sure that if there was one platform under which the JVM systematically
works better or worse than another, they would say so. But they don't.
The Tomcat code is written in Java, and it is the same, no matter on which underlying
platform it runs. So there is also no difference there.
So basically what I'm saying is :
- given 2 similar hardware platforms (similar CPU, similar amount of RAM, similar disks
etc..), one running Windows and one running Linux
- given the same type of JVM running on each one of them (for example, both being
Oracle/Sun JVM's of the same level, both 32- or 64-bit)
- given the same amount of system resources given to these JVMs (same amount of RAM, same
percentage of CPU etc..), and the same JVM startup options
- given that the version of Tomcat is the same on both
- and given the same Tomcat application, and the same load put on that application by the
users
then the "performance" difference between them is likely to be very small, so small that
it will be hard to measure, and so small that it pales in comparison to the impact that
your application code will have.
In other words, if you are actually experiencing "performance issues" with your
application under one platform, then spend more time looking at your application than at
anything else. And do not spend your time thinking that Windows or Linux makes the
difference, because that is probably not the right subject at which to spend your time.
And I put "performance" between quotes above, because until you define what you actually
mean by that, and before you indicate what exactly you mean by "performance issues" in
your application, it is still very difficult to provide you with any useful help other
than the above generalities.
This being said, it is still possible that your application runs a tight loop issuing
millions of calls to some Java function which, due to the platform, is less than optimal.
But then again, only you would know this and could then bring a specific question about
it, where someone may be able to help.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org