tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Cherichetti \(Renegade Internet\)" <m...@renegadeinternet.com>
Subject maxProcessors problem
Date Mon, 18 Aug 2003 20:42:29 GMT
First off, I'm using RedHat Linux 7.3, IBM JDK 1.4.1, and Tomcat 4.1.24 on
an IBM xSeries with Dual Xeon 2 GHz processors, 2 GB RAM, and SCSI disks.
I'm trying to get Tomcat to handle a lot of traffic (4-5 million hits per
day) and bumping up against a problem I for life of me can't figure out.
So, I'm hoping someone else on this list has run into this problem and can
help me out!

Basically, I can't set maxProcessors higher than 384.  If I do, Tomcat ends
up choking (it doesn't crash, it just stops creating more request
processors) and I get the following in catalina.out:

Aug 18, 2003 5:05:02 AM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on port 80
Aug 18, 2003 5:05:05 AM
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run
SEVERE: Caught exception executing
org.apache.tomcat.util.net.TcpWorkerThread@6b26b5fe, terminating thread
java.lang.OutOfMemoryError: JVMCI015:OutOfMemoryError, cannot create anymore
threads due to memory or resource constraints
        at java.lang.Thread.start(Native Method)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.<init>(ThreadPool.
java:582)
        at
org.apache.tomcat.util.threads.ThreadPool.openThreads(ThreadPool.java:460)
        at
org.apache.tomcat.util.threads.ThreadPool.runIt(ThreadPool.java:293)
        at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:536)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:619)
        at java.lang.Thread.run(Thread.java:568)

Now, I know that the JVM has plenty of memory left that it can be allocated
and the system has plenty of free memory, so I'm not sure it's really a
memory issue.  As I said, Tomcat still runs and the memory allocated to the
JVM increases, it just doesn't have nearly enough request processors created
at the point this error happens to deal with all of the traffic.  I've tried
playing around with ulimit settings, but those didn't have any impact.  I've
also tried the Sun JVM and it did the same thing.

Has anyone run into this problem or something like it before?

Any help would be greatly appreciated!

Thanks,
Mike




Mime
View raw message