hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dmitry Potapov <potapo...@gmail.com>
Subject Re: HttpCore NIO performance improvements
Date Thu, 21 Feb 2013 08:39:49 GMT
On Thu, Feb 21, 2013 at 12:05 PM, Oleg Kalnichevski <olegk@apache.org> wrote:
> On Thu, 2013-02-21 at 12:26 +0530, Asankha C. Perera wrote:
>> Hi Oleg
>> > I made really major changes to HttpCore NIO in order to reduce packet
>> > fragmentation on the TCP level when transmitting relatively short (less
>> > than 1 TCP frame) entity enclosing messages. In my tests I am seeing 25
>> > to 30% performance improvements for short PUT and POST requests on the
>> > client side and for short responses the server side as a result of
>> > reduced TCP packet fragmentation.
>> This is interesting.. What was the size of the messages that yielded the
>> improvement? Does this also relate to the use of tcpnodelay
>
> 2048 bytes. I was using this micro-benchmark to compare performance of
> different versions. I had tcpnodelay set to true for all test scenarios.
So, in fact HttpCore NIO doesn't respect behaviour of TCP_NODELAY, if
ConnectionConfig.Builder.setFragmentSizeHint(0) wasn't called?
I think this should be implicitly stated in javadocs, because this is
not clear without reading the code.

>
> https://svn.apache.org/repos/asf/httpcomponents/benchmark/httpcore/trunk/
>
>> > The downside is that all this comes at the price of destabilizing areas
>> > of code that have been well tested and stable for years. I made sure
>> > that those areas have close to 100% unit test coverage, but still there
>> > can be regressions.
>> >
>> > I would be enormously thankful if you could take the latest SVN trunk
>> > for a spin and test it with your applications. I would be interesting to
>> > know if the latest changes actually translate into any tangible
>> > performance gains at the application level.
>> During our migration, at one point we also did migrate to 4.3-alpha1 -
>> so it would be something we would love to do, but it will need some more
>> time, as we are yet to finalize the fallback to 4.2.x..
>
> HttpCore 4.3 should be backward compatible with 4.1 and 4.2. You should
> be able to drop it in place of an older version and see improved
> performance.
>
> Oleg
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
> For additional commands, e-mail: dev-help@hc.apache.org
>

-- 
Dmitry

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


Mime
View raw message