You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Tim Whittington <Ti...@orionhealth.com> on 2007/01/07 22:01:47 UTC

Re: svn commit: r493480 - /tomcat/connectors/trunk/jk/java/org/apache/jk/common/ChannelSocket.java

This is one of the major problems with the current JK implementation
 
If web server threads, JK worker connection_pool_size and AJP
maxThreads don't all match, then you can get (silently) dropped
connections.
If you configure it so you don't, then you've got very large numbers of
connections (and possibly threads) on your backend Tomcats.
 
I've got one production Apache 2 with 1000 max threads, serving
multiple back end Tomcat instances, each of which have to have
maxThreads set to 1000 to be sure they don't break.
This is less of (not?) an issue with the NIO/APR connectors, but it's
somewhat of a broken architecture.
 
tim

>>> On 8/01/2007 at 7:48 a.m., in message <en...@sea.gmane.org>,
"Bill Barker" <wb...@wilshire.com> wrote:

"Takayuki Kaneko" <ka...@gmail.com> wrote in message 
news:fad588420701070650u5370286ctca3a1ff2d400380c@mail.gmail.com...
> Hi all,
>
> IMHO, it is useful that we can set the backlog on AJP connector.
> Because mod_jk 1.2.19 or later has "DisableReuse" option.
>
> In previous versions, Tomcat had to be set the maxThreads lager than
> Apache's MaxClients. So, Tomcat's threads were excessive.
>
> I expect that Tomcat will be able to handle multiple socket by lesser

> threads
> with this option and backlog on AJP.
>

And, you would be wrong.  Turning on the DisableReuse option basically

downgrades Tomcat to AJP/1.2 (which also means that it is almost
unusable in 
a production system).  And setting the backlog can only hurt you :). 
Tomcat 
will still accept connections as fast as it can.  If you want to use
fewer 
threads, then you need to use the APR or NIO AJP Connector.  But IMHO,
you 
should get server with a real O/S, so you don't have to care about
thread 
counts.

> Regards,
>
> -Takayuki
>
> On 1/7/07, Peter Rossbach <pr...@objektpark.de> wrote:
>> I agree with you, but at apache takeover the backlog can be
helpfull,
>> and default is 0 as before.
>>
>> Regards
>> Peter
>>
>> Am 07.01.2007 um 00:15 schrieb Bill Barker:
>>
>> >
>> > "Filip Hanik - Dev Lists" <de...@hanik.com> wrote in message
>> > news:45A02A9E.4010304@hanik.com...
>> >> ok,  this is hella confusing.  :)
>> >> the AJP is supposed to be a persistent protocol, so why would we
>> >> have a
>> >> backlog on the listener?
>> >> ie, the connections can potentially not close at all in an ideal
>> >> world,
>> >> yet you would accept connections and never do anything with
them?
>> >>
>> >
>> > I agree that setting the backlog on the AJP Connector is pretty
>> > pointless.
>> > I suppose that it might be possible to have a setup where Httpd
can
>> > flood
>> > Tomcat with new requests faster than it can handle accepts, but
at
>> > worst it
>> > would only be at startup.  However, the worst that the patch does
>> > is let a
>> > clueless sysadm shoot herself in the foot :).
>> >
>> >> Filip
>> >> 




---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org 
For additional commands, e-mail: dev-help@tomcat.apache.org