activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hiram Chirino" <>
Subject Re: AMQCPP Openwire much slower than Stomp?
Date Thu, 19 Apr 2007 14:56:18 GMT
There has been a bug report that no, the broker side is not honoring
the request for tcp_nodelay to get enabled on the socket.

On 4/19/07, Teemu Torma <> wrote:
> On Thursday 19 April 2007, Albert Strasheim wrote:
> > From what I can tell, AMQCPP supports a broker URL property for
> > setting TCP_NODELAY, but actually setting it doesn't change anything
> > at socket creation time (although I could be mistaken, I just did a
> > quick browse through the code). Maybe TCP_NODELAY should even be the
> > default?
> You need activemq side to do the same thing to get latency down.  On the
> other hand, if you are just sending messages you get better throughput
> without TCP_NODELAY, it all depends on usage.
> > > How to check if this is really the problem:
> > > -Go to AMQCPP source code and add a line to your socket creation
> > > code, where you explicitely set TCP_NODELAY to True always (to
> > > disable Nagle's algorithm). Rebuild and compare.
> >
> > I'll give this a go today.
> I tested this earlier this week and did get 40ms off from the round-trip
> time (all Linux).  However, I still get 40ms left and even though
> tracing openwire commands show we are requesting nodelay from the
> broker, I could not get it down.  Does activemq itself implement this
> correctly?
> Teemu



View raw message