[prev in list] [next in list] [prev in thread] [next in thread] 

List:       httpclient-users
Subject:    Re: Thread Contention (due to use of proxys) in HttpClient 4.3
From:       Daniel Feist <dfeist () gmail ! com>
Date:       2014-05-23 10:34:42
Message-ID: CADJQLmiXJX6aMxNwkoqJdfoacYr8-Bh_6FOHz3FJSbZd7jxrVA () mail ! gmail ! com
[Download RAW message or body]

No worries.

thanks!

On Thu, May 22, 2014 at 1:17 PM, Oleg Kalnichevski <olegk@apache.org> wrote:
> On Thu, 2014-05-22 at 11:05 +0100, Daniel Feist wrote:
> > BTW, is there a jira issue for this I can reference?
> > 
> 
> I did not raise a ticket (I have enough fun raising tickets at my day
> work). You are welcome to raise one postmortem so to speak, if you feel
> like.
> 
> Oleg
> 
> > thanks!
> > 
> > On Wed, May 21, 2014 at 8:30 PM, Daniel Feist <dfeist@gmail.com> wrote:
> > > > > - 4.3 is faster than 3.1 when cpu is constrained (+5%)
> > > > > - 4.3 is slower than 3.1 when cpu is constrained (-5%)
> > > > > - With your changes 4.3 performs same as 3.1 on 32 core
> > > > 
> > > > This seems only to be the case with certain concurrency levels (20 and
> > > > 200), which is suspicious.
> > > 
> > > Agree, weird, but as long as 4.x is at least as fast as 3.1 (it is),
> > > then there are many other reasons to forget about 3.1.
> > > 
> > > > > -  I'm unsure why your change to eliminate proxy would have such an
> > > > > impact with the 10 thread case.  (+65%), good though.
> > > > 
> > > > Could be a fluke. I see no good reason for such a significant
> > > > difference.
> > > 
> > > I doubt it's a fluke was quite clear and repeatable.  Not important to
> > > understand fully i don't think anyway
> > > 
> > > > The patch has been committed to SVN trunk and 4.3.x branch.
> > > > 
> > > > http://svn.apache.org/r1596649
> > > > http://svn.apache.org/r1596653
> > > > 
> > > > Thank you so much for reporting the problem and helping fix it.
> > > 
> > > Great!  This wasn't a significant problem, just a potential optimisation.
> > > 
> > > Dan
> > > 
> > > 
> > > > 
> > > > Cheers
> > > > 
> > > > Oleg
> > > > 
> > > > > Dan
> > > > > 
> > > > > On Wed, May 21, 2014 at 4:02 PM, Oleg Kalnichevski <olegk@apache.org> \
> > > > > wrote:
> > > > > > On Wed, 2014-05-21 at 15:40 +0100, Daniel Feist wrote:
> > > > > > > Here are the results!!  Interesting...
> > > > > > > 
> > > > > > > I reran everything:
> > > > > > > - Added JVM options to even out garbage collection.
> > > > > > > - Ran each test for minutes 5 minutes.
> > > > > > > - Used Jetty SelectChannelConnector, same as you always used.  (other
> > > > > > > one is faster, but less stable).
> > > > > > > 
> > > > > > > https://docs.google.com/a/mulesoft.com/spreadsheets/d/1j2TCeAQmrkWLZyQfetzmtqmUDaGQBiDAr20hC9gEfYE/edit#gid=590558615
> > > > > > >  
> > > > > > > Configurations of httpClient are as you have in svn accept for 4.3.3
> > > > > > > (not minimal) which is configured as follows:
> > > > > > > 
> > > > > > > The non-minimal configuration for 4.3.3 is:
> > > > > > > final RequestConfig requestConfig = RequestConfig.custom()
> > > > > > > .setStaleConnectionCheckEnabled(false)
> > > > > > > .setExpectContinueEnabled(false)
> > > > > > > .build();
> > > > > > > this.httpclient = HttpClients.custom()
> > > > > > > .setConnectionManager(this.mgr)
> > > > > > > .disableContentCompression()
> > > > > > > .setDefaultRequestConfig(requestConfig)
> > > > > > > .build();
> > > > > > > 
> > > > > > > 
> > > > > > > Dan
> > > > > > > 
> > > > > > 
> > > > > > Hi Daniel,
> > > > > > 
> > > > > > What I am seeing makes me think we are on the right track, aren't we? I
> > > > > > find HC 3.1 performance with 32 CPU cores a little suspect, but HC 3.x
> > > > > > has a completely different connection pool manager implementation, so I
> > > > > > do not see this as anything worth looking into.
> > > > > > 
> > > > > > I'll merge my changes into the official SVN repository shortly. I
> > > > > > personally would consider the issue resolved unless you think there is
> > > > > > still something that needs investigation.
> > > > > > 
> > > > > > Cheers
> > > > > > 
> > > > > > Oleg
> > > > > > 
> > > > > > 
> > > > 
> > > > 
> > 
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> > For additional commands, e-mail: httpclient-users-help@hc.apache.org
> > 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic