> -----Original Message-----
> From: Leon Rosenberg [mailto:[EMAIL PROTECTED] 
> Sent: Thursday, March 09, 2006 10:28 AM
> To: Tomcat Users List
> Subject: Re: Performance tricks with multiple 
> tomcat instances
> 
> On 3/9/06, Filip Hanik - Dev Lists <[EMAIL PROTECTED]> wrote:
> > If I were to add my two cents, I would say the OS 
> scheduler, the bus, 
> > memory access all will play their part. ie, I think you 
> will get more 
> > juice out of 8 single CPU machines each running a tomcat, than one 
> > machine with 8 CPU's, as your 8cpu machine will not have 8 parallel 
> > buses, 8 drives, 8 everything etc.
> 
> Of course, but it also means 8 HE rack space, 16 power 
> cables, 8 switch ports etc. It also means 8 systems to 
> backup, to install and to administrate. We are trying to find 
> a configuration between n-one cpu servers and 1 n-cpu server 
> which is best from the manageability point of view and has 
> optimal tco. Personally I don't believe that anything with 
> more than 2 cpu's will ever pay out, but we have to test it :-)

I have never been a big fan of single CPU machines for threaded
applications.  It it too easy for a single slow thread to botteneck the
whole system.  Going beyond 2 CPUs however is expensive and I think that it
is best reserved for applications that

 - Cannot easily run across load balanced servers, such as a database
 - Are written to take advantage threading in a way that will truly benefit
from having more than 2 CPUs. (i.e, we have an app where one thread is
reading data from the network and populating a queue, a thread pool is
parsing the queue data and another thread pool is processing the parsed data
so having more CPUs would allow us to increase the size of the thread pools
and thus make the app run faster).

If these two criteria are not met (and there are probably a few more I am
missing) then I think it is better to have more less powerful machines which
provided redundancy.

I have to say that I am always surpised to read when people are setting
application servers (such as Tomcat) to maxthreads of 1000.  If I had 1000
processes running at the same time on any of my application servers it would
melt never finish any of them.  It is more realistic to have 5 - 10 threads
processing at any given time and to allow requests to queue (though one must
test to find the sweet spot).

Just my $.02

Justin

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

Reply via email to