Michael Südkamp wrote:
Hello,

From time to time we have customers experiencing Tomcat going to 100% CPU.
One customer sent us the output from the server status page from the Tomcat 6.0.32 Manager web-app.
This page reports a lot of HTTP connector requests belonging to a certain client

can you explain "a certain client" ? is it a browser, or some other app ? is it one single client ? from the point of view of that client, is the request finished, or is the client still waiting for something ?

with stage value "S" and "time" values between 1000000 and 3000000 ms, i.e. almost one hour.
We don't know what causes the requests to never finish.

The question is : is the request/response really finished ?

 Believe me our web-app is not in a loop.

How do you know that ? We do not believe anything or anyone here without some 
proof.

Maybe it's a problem with the database but we have already often spend a lot of time to analyze
   but couldn't find a problem on our side.

I believe that taking some thread dumps would tell you exactly what Tomcat is doing at such times.

Anyway,  isn't Tomcat somehow capable to detect such hanging requests (say 
requests that take
 longer than a minute) and kill them?

Well, if from the Tomcat point of view the request is not finished, it should not kill it, should it ? some valid requests/responses may take a long time to finish. How is Tomcat supposed to know ?

I studied the HTTP connector reference but haven't found a parameter related to 
this.

A very long KeepAlive setting may explain connections lingering on. What is 
your setting ?

The system runs on a Windows Server 2008 R2 and Java 5 (OK we could ask the customer to upgrade Java).



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to