Ouch! Thats a LOT of threads - I can't believe your box still performs
well with this many threads - or have you enabled keep-alives?
The number of threads really depends on your application. I have max
threads set to 750, or our 32bit 2.6 Linux systems. Our thread count
normally doesn't go over 200. When the servers need to wait for the
backend, and the requests start to queue (heading towards 1000) - you
will end up with a huge problem anyway, as it is probably unlikely that
your backend servers/ database, etc, will be able to catch up with the
requests, but as I said, that depends how and what your application does.
Andrew
J. Ryan Earl wrote:
As a reference, in conf/server.xml I set my thread limit to 10000 max
threads, 1000 max idle threads, and 100 on startup. I've seen my as
many as 7K threads busy within my application. This is on a 32bit 2.6
Linux kernel with 2GB of RAM (-Xmx1500m). On the 2.4 kernel I found
practical limitations in how many "threads" the kernel could multiplex
between, saw frequent system hangs under high load where the whole
server would become unusable.
On either linux kernel, you probably want to increase your maximum
number of file descriptors in /etc/security/limits.conf for your
Tomcat user account(s). 16K nofile as default works great for me.
How much more memory you need really depends on your application. 500
threads isn't that much memory overhead, but if each thread goes off
and creates a bunch of objects while it's working you'll need to
assure heapspace is available accordingly. The short answer is: try
it out, play with it. 500 threads isn't a whole lot.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]