I knew somewhere in the past someone had done some performance testing against static content. After a bit of googling, I found this paper detailing some performance testing with regard to various JDKs and different sizes of static png files:

http://cvs.apache.org/~woolfel/benchmark_summary.doc

With regard to dynamic content (jsps, servlets, etc., ...) performance will swing widely depending on what the code is doing. Connecting to databases and other services are among the most expensive processes followed by hashing through large linear data structures. Also consider the amount of memory being used per session and per request against the size of the server. Lastly, developers always have to pay attention to taking care of their data structures and dropping references on them as soon as they aren't needed any more to avoid leaks.

Bottom line -- the only way to tell how many users will be supported by a specific webapp/server combo is to stress test with an tool like JMeter.

--David


Martin Gainty wrote:

Tim makes a very good point

to make this distinction clearer there are 2 distinct concepts which we need to 
have clear understanding

1)there may be thousands of of (browser users) connecting in (on unix as the nobody account) to a tomcat server
2)number of <users which are configured under 
$TOMCAT_HOME/conf/tomcat-users.xml which would be configured as something like
<user username="tomcat" password="tomcat" roles="tomcat"/>
in the latter case the number of users would be confined to number of 
maxThreads for the connector used

On a side note It is a welcome respite to hear from courteous and polite 
professionals..if only for one day!

Martin--
--------------------------------------------------------------------------- This e-mail message (including attachments, if any) is intended for the use of the individual or entity to which it is addressed and may contain information that is privileged, proprietary , confidential and exempt from disclosure. If you are not the intended recipient, you are notified that any dissemination, distribution or copying of this communication is strictly prohibited. --------------------------------------------------------------------------- Le présent message électronique (y compris les pièces qui y sont annexées, le cas échéant) s'adresse au destinataire indiqué et peut contenir des renseignements de caractère privé ou confidentiel. Si vous n'êtes pas le destinataire de ce document, nous vous signalons qu'il est strictement interdit de le diffuser, de le distribuer ou de le reproduire. ----- Original Message ----- From: "Tim Funk" <[EMAIL PROTECTED]>
To: "Tomcat Users List" <users@tomcat.apache.org>
Sent: Monday, December 25, 2006 9:47 AM
Subject: Re: Peak load of Tomcat-powered server(s)?


Any modern server can easily handle thousands of concurrent users.

But that doesn't answer concurrent requests. Which should be > 100/sec.

But there are 2 major factors
- use of HttpSession is light - Using HttpSession for users can kill scalability due to memory constraints. (YMMV) - Amount of work each request takes - images/css will be served very quickly as compared to JSP's or servlets which utilize database connectivity or file access.


-Tim

Li Ma wrote:
Thanks for the suggestions. I agree lots of stuff can only be decided after
putting into a specific environment. But still, any number that can be
shared?

How many concurrent users your Tomcat can serve?

Thanks again!

Li

On 12/24/06, Gary Evesson <[EMAIL PROTECTED]> wrote:
Generally in a production environment, increasing the number of threads
from
the default is compulsory. You need to balance that against the amount of
memory that you have allocated for your JVM, which needs to be balanced
against the amount of memory available in the machine.

Handling concurrent users generally comes back to the number of
connections
that your architecture can handle and how much work your database
server(s)
(assuming you have some) can handle. Our experience has been that these
things become an issue before tomcat does. It depends on your application
*a
lot*.

Nothing beats real load testing to figure out where *your* stress points
are. They are probably going to be different to other people...

Gary

-----Original Message-----
From: Li Ma [mailto:[EMAIL PROTECTED]
Sent: Sunday, December 24, 2006 12:35 PM
To: Tomcat Users List
Subject: Re: Peak load of Tomcat-powered server(s)?

Actually you can imagine the server serves a site like mySpace where
people
can access their own home, blog, images, forum, etc. I know it is still
not
easy to answer, but I'm not looking for an answer to my specific question. I'm just looking for any similiar experience that can be shared and hoping
I
can learn some.

Another question, how many threads do you think Tomcat can have on one
machine? And will increasing number of threads help processing more
requests? I think 100-150 per server per second is not a good number. But
if
it is true, does that mean Tomcat is not suitable for large website? And
what does commercial products like WebLogic can normally do?

Well, lots of question at my end. Thanks for sharing of your idea. Any
thing
will help.

Best!

Li

On 12/24/06, Leon Rosenberg <[EMAIL PROTECTED]> wrote:
The question is impossible to answer, since you don't tell us what a
user will do :-)
However, to give you an example, if your requests are somewhat
"normal-web-requests" (producing html) than going for 100-150 per
second and server should be a reasonable value.

regards
Leon

P.S. Of course it depends hardly on your use-cases... for example your
apache in front of tomcat could reduce the performance by 10% without
giving you anything in exchange.

On 12/24/06, Li Ma <[EMAIL PROTECTED]> wrote:
I need to setup for a client to run a myspace-like site. My client
kept
asking me how many concurrent user's I can support. I really don't
know
the
answer.

We will use Apache, jk_mod, Tomcat and Oracle(clustered). We will use
X86
servers with Linux.

Can anyone share your experience and let me know the best load you
have
achieved?
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to