I was literally about to post on the same subject.  If anyone knows how
Tomcat (and in my case Apache 2.0.48+mod_jk2 on Solaris 8) handles
interrupted/broken connections this would be helpful.

Just to add my own observations... I can "push over" our test
environment simply by hitting refresh (rapidly) for our front page,
which does contain some SQL queries.  By just one browser continuously
interrupting the connections with "refresh", I can watch the Java
process in top climb over 80% CPU and the site becomes unresponsive.

With the SAME test pointed at JRun 3.0, I cannot push JRun over the
edge... Java reaches approximately 40-50% CPU and levels off. 

What could Tomcat (or at least Tomcat 4.1.30) be doing differently than
JRun in handling these adverse threads?  

Does Tomcat 5 handle this any differently?

Thanks




On Fri, 2004-03-19 at 08:15, Pepijn Palmans - Kangaroot wrote:
> Hello there,
> 
> When I use apache + mod_jk + tomcat I see something \strange\.
> 
> When I connect my browser via apache to a servlet, hit the refresh button
> before I got a response this happens:
> 
> - the tcp connection between browser and tomcat server is dropped.
> - apache knows that it's thread can be recycled and stops serving this
> useless request.
> - tomcat doesn't stop processing the request to the servlet.
> - a new processor is started.
> - the old one exits after a while with a 'Broken pipe' message.
> (jara.io.IOException)
> 
> 
> Is there any way to get the java/tomcat thread stopped when apache detects
> that a certain request is no longer needed ?
> 
> At this moment, if I just keep refreshing some servlet my machine gets way
> to slow due to the fact that it has to process a lot of useless requests.
> 
> As you can understand, suppose a servlet takes 2 seconds to process, the
> more I hit refresh, the slower the processing of a thread becomes, and the
> more people get fed up waiting for a response and hitting refresh, and the
> slower the tomcat server gets ....  After a while, the tomcat doesn't even
> respond anymore.
> 
> I found some solution in tuning the min/max processors in server.xml,
> tuning the acceptCount etc... but I think the main solution lies in the
> way tomcat handles the 'no longer needed' requests.
> 
> Maybe another connector between apache and tomcat does tell tomcat it can
> stop the request ?  As far as I know the ajp13(mod_jk) protocol is an
> asynchronous protocol.  Is that correct ?
> 
> 
> Regards,
> 
> Pepijn Palmans
> Managing Director
> 
> Kangaroot Linux Solutions
> Grote Steenweg 91
> 2600 Berchem, Antwerpen
> Tel: +32 3/286.17.17
> Fax: +32 3/281.23.49
> Email: [EMAIL PROTECTED]
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]


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

Reply via email to