Dave Johnson on open web technologies, social software and software development
« Ted explains how to... | Main | Kicking bricks baref... »
FreeRoller keeps on running out of threads to process incoming requests. This could be a problem in Roller, but I suspect that we may have run up against this bug in the Tomcat 4.0.X HTTP connector:
BUG5735: HTTP connector running out of processors under heavy load
The bug is marked as fixed, but I think that means the fix is in the new Tomcat 4.1.X Coyote HTTP connections.
Next time this happens, I'll try Glen Nielson's advice (from the bug report):I would recommend that you dump the stack for all running threads when you experience this problem. This can help identify what is causing the problem. By reviewing the stack dump for each thread you can determine whether the problem is due to Tomcat or your application. On unix you do a kill -QUIT {tomcat java pid) to cause the thread stack's to be dumped to catalina .out. A Processor for Tomcat runs your application code, delays in your code can cause additional processor threads to be created to handle new requests. Possible application or configuration problems which can delay requests: Connection delays due to networked services such as a db. Connection delays due to running out of pooled resources. Thread synchronization deadlocks. A cascading affect where many new processors get created due to excessively long JVM Garbage Collections. start java with -verbose:gc to detect this.
Dave Johnson in Roller
06:42AM Mar 11, 2003
Comments [1]
Tags:
Roller
This is just one entry in the weblog Blogging Roller. You may want to visit the main page of the weblog
Below are the most recent entries in the category Roller, some may be related to this entry.
Posted by Anonymous on March 11, 2003 at 03:22 PM EST #