Tomcat serves requests with threads and allows by default configuration around 
the 80 mark. If it cannot handle them all, they get stacked up until threads 
become free. Most people would probably agree that 80 concurrent requests would 
not happen in most systems that often. 

You can do various bits and pieces to prepare your application for production. 
Someone already mentioned using a load tool like JMeter to test your worst case 
scenario. Invariably that will either lead you to be happy or not so. If not, 
you need to look at why your applicaton is not performing .. things like 
network connectivity, database connections, raw algorithms, legacy integrations 
and interoperability with other systems, will all have in impact per request 
thread on your system. You can use profiling tools to get under the bonnet a 
lot more to see where memory and time is being lost within your code. 

In terms of configuration, there is no "make this production capable". There 
are things like switchin off class-reloading on the web application and turning 
off development mode in the conf/web.xml file and perhaps you'd want to tweak 
the request processor thread counts, but really you need to 

1) have an idea of what your worst case/scaling case of user load will be
2) test optimise test optimise test optimise until your load tests fit your 
expectation.

You can't just say, this is my server size, what can that handle, without 
factoring in (a) what you want it to handle and (b) what you're application is 
going to do.

Cheers, Allistair.

> -----Original Message-----
> From: Bruno Georges [mailto:[EMAIL PROTECTED]
> Sent: 01 July 2005 13:36
> To: Tomcat Users List
> Cc: 'Tomcat Users List'
> Subject: Re: Tomcat in production
> 
> 
> Adam
> 
> I don't know personnaly how tomcat behave in production for 
> heavier load
> than 10 concurrent request, but if you want to do the test in your own
> environemtn, which I guess has a different bandwith and 
> network equipment,
> etc...
> 
> I would suggest you to use tools to simulate the load, [and 
> also against
> your own webapps which may be the bottleneck.]
> 
> There are commerical products which can cover this.
> Apache as one which is usually found under its bin directory: ab
> I like also JMeter, also from the Apache / Jakarta guys.
> 
> With JMeter you can set the number of concurrent connections 
> and the type
> of request, it is very complete.
> you can run it form one machine, but again your box network 
> interface will
> be taking the load, so maybe you can use different box, 
> etc... your choice
> 
> 
> Bruno Georges
> 
> Glencore International AG
> Tel. +41 41 709 3204
> Fax +41 41 709 3000
> 
> 
>                                                               
>                                                               
>                           
>                       "Adam Lipscombe"                        
>                                                               
>                           
>                       <[EMAIL PROTECTED]         To:      
> "'Tomcat Users List'" <[email protected]>        
>                               
>                       pensys.com>                cc:          
>                                                               
>                           
>                                                  Subject: 
> Tomcat in production                                          
>                               
>                       01.07.05 14:14                          
>                                                               
>                           
>                       Please respond to  Distribute:          
>                                                               
>                           
>                       "Tomcat Users      Personal?            
>    |-------|                                                  
>                           
>                       List"                                   
>    | [ ] x |                                                  
>                           
>                                                               
>    |-------|                                                  
>                           
>                                                               
>                                                               
>                           
>                                                               
>                                                               
>                           
> 
> 
> 
> 
> Folks,
> 
> 
> We are developing an app that is currently deploys in TC 
> 5.0.28 using Java
> 1.4.2_04. The DB is MySQL.
> Our first release is almost complete, and I have been tasked with
> understanding what the issues might be in putting this live 
> in a production
> environment.
> 
> 
> Our customers typical server will be a dedicated blade 
> running Win2k3 or
> RedHat Linux, dual Xeon processors, 2GB RAM.
> 
> 
> 1. Does anyone have an idea of how  many concurrent 
> users/requests TC can
> support in this sort of config?
>    What is reasonable?
> 
> 
> 2. Are there any useful doc available for configuring TC for 
> a production
> environment?
> 
> 
> 3. Any other issues to consider?
> 
> 
> TIA - Adam
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 
> 


<FONT SIZE=1 FACE="VERDANA,ARIAL" COLOR=BLUE> 
-------------------------------------------------------
QAS Ltd.
Registered in England: No 2582055
Registered in Australia: No 082 851 474
-------------------------------------------------------
</FONT>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to