-
1. Re: Netty performance with network RTT > 1 second
clebert.suconic Jun 28, 2011 6:58 PM (in response to bnc119)It seems you need to disable naggle:
http://docs.jboss.org/hornetq/2.2.5.Final/user-manual/en/html_single/index.html#d0e3306
i.e. change tcp-no-delay parameter accordingly to the doc.
The doc will also provide you information about other protocols.
-
2. Re: Netty performance with network RTT > 1 second
bnc119 Jun 29, 2011 12:49 PM (in response to clebert.suconic)Thanks for the response. I'm looking at the hornetq-configuration.xml file and have a few follow-up questions:
1. By default, hornetq came configured with two acceptors defined: netty, and netty-throughout:
<connectors>
<connector name="netty">
<factory-class>org.hornetq.core.remoting.impl.netty.NettyConnectorFactory</factory-class>
<param key="host" value="${jboss.bind.address:localhost}"/>
<param key="port" value="${hornetq.remoting.netty.port:5445}"/>
</connector>
<connector name="netty-throughput">
<factory-class>org.hornetq.core.remoting.impl.netty.NettyConnectorFactory</factory-class>
<param key="host" value="${jboss.bind.address:localhost}"/>
<param key="port" value="${hornetq.remoting.netty.batch.port:5455}"/>
<param key="batch-delay" value="50"/>
</connector>
</connectors>
Can you tell me what the difference is between these two acceptors? They are configured the same way, except netty-throughput defines a batch-delay variable.
My other question is: There are two acceptors defined in the config file. (And they are also referenced in the hornetq-jms.xml file) How does hornetQ decide which of the two acceptors to use at runtime?
-
3. Re: Netty performance with network RTT > 1 second
clebert.suconic Jun 29, 2011 5:20 PM (in response to bnc119)the throughput will batch multiple writes the same way naggling (or tcp-no-delay) does. We just have an algorithm at our protocol level.
Look closely and you will see that each acceptor is on a different port (5455 and 5445) I bet you did't look closely??