hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Asankha C. Perera" <asan...@wso2.com>
Subject Re: [HttpCore] Tuning HttpCore / NIO
Date Sat, 02 Jun 2007 09:43:31 GMT
Hi Oleg
> probably _really_ want to set TCP_NODELAY on. This will disable
> Nagle algorithm and should result in a considerable performance increase
> for persistent connections [1]. 
> You may also want to experiment with SO_RCVBUF and SO_SNDBUF TCP/IP
> parameters. These parameters tend to have a huge (order of magnitude)
> impact on performance. Usually the larger the buffer the higher the data
> through-put. HttpCore does not allow you to modify the SO_RCVBUF and
> SO_SNDBUF values using HttpParams, as generally it is a good idea to
> leave these parameters set to the OS defaults. You may still want to
> tune them on the OS level (net.core.rmem_default, net.core.wmem_default,
> net.core.rmem_max, net.core.wmem_max parameters in Linux)
Thanks for this excellent information, and I would try it early next 
week in my performance test environment.
> I also think Synapse could benefit from a custom NIO pipe implementation
> capable of throttling I/O rate under load using IOControl interface. If
> the underlying pipe implementation were capable of temporarily
> suspending I/O events when unable to process them instead of just
> ignoring them, it would result in some performance improvement, because
> the I/O reactors would not fire I/O events unnecessarily. But this is
> probably something for Synapse 1.1
Yes, I have seen a few issues with the current implementation - where I 
use native Pipe implementation for Unix and a simulated Pipe for Windows 
by default. I hope to revisit this code to improve it, when I get some 
time to look at it in detail.

many thanks

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

View raw message