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" <funkman@(protected)>
>To: "Tomcat Users List" <users@(protected)>
>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 <lists@(protected):
>>>
>>>
>>>>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:lima01@(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 <rosenberg.leon@(protected):
>>>>
>>>>
>>>>>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 <lima01@(protected):
>>>>>
>>>>>
>>>>>>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@(protected)
>>To unsubscribe, e-mail: users-unsubscribe@(protected)
>>For additional commands, e-mail: users-help@(protected)
>>
>>
>>
>>
>
---------------------------------------------------------------------
To start a new topic, e-mail: users@(protected)
To unsubscribe, e-mail: users-unsubscribe@(protected)
For additional commands, e-mail: users-help@(protected)