Hello,
I have a question regarding the traffic flow between two clustered SMX
instances. I have the following setup:
kakyou ------------------- nataku ---------------- kanoe
SMX with CXF SE SMX with CXF BC CXF consumer
I have monitored the traffic between Kakyou and Nataku with tcpdump, and I
found the results rather surprising, which is why I want to make sure it is the
expected behaviour, and if not, get some tips as to what I did wrong.
First surprise was that there are two TCP connections between the SMX
instances: one which goes from kakyou:35518 to nataku:61617 and one from
nataku:35486 to kakyou:61616. I would have expected one connection from
nataku:61617 to kakyou:61616. Second surprise was that messages from operations
following a request-response pattern are transmitted over both connections: It
seems that with every message, the one received before is "quoted", so to
speak. To be precise, for a request from Kanoe the following happens:
1) The CXF request is transmitted from Kanoe to Nataku.
2) The normalized request is transmitted over the nataku:35486 - kakyou:61616
connection.
3) Request and response are transmitted over the kakyou:35518 - nataku:61617
connection.
4) Request and response are transmitted over the nataku:35486 - kakyou:61616
connection.
5) CXF response is transmitted from Nataku to Kanoe.
Is this what is supposed to be happening? (I wouldn't be surprised if it
wasn't; I was trying to find out what I was actually configuring, but all the
relevant entries over at the ActiveMQ site were marked TODO.)
Kakyou's ActiveMQ configuration is the following:
-----------------------------------------------------------------
<beans xmlns:amq="http://activemq.org/config/1.0">
<amq:broker id="broker" depends-on="jmxServer" useShutdownHook="false">
<amq:managementContext>
<bean class="org.apache.activemq.broker.jmx.ManagementContext">
<property name="createConnector" value="false" />
</bean>
</amq:managementContext>
<amq:persistenceAdapter>
<amq:journaledJDBC journalLogFiles="5"
dataDirectory="/opt/iona/fuse-esb-3.3.1.9/data/amq"/>
</amq:persistenceAdapter>
<amq:transportConnectors>
<amq:transportConnector uri="tcp://localhost:61616"/>
</amq:transportConnectors>
<amq:networkConnectors>
<amq:networkConnector uri="static://(tcp://nataku:61617)" />
</amq:networkConnectors>
</amq:broker>
</beans>
-----------------------------------------------------------------
Nataku's is:
-----------------------------------------------------------------
<beans xmlns:amq="http://activemq.org/config/1.0">
<amq:broker id="broker" depends-on="jmxServer" useShutdownHook="false">
<amq:managementContext>
<bean class="org.apache.activemq.broker.jmx.ManagementContext">
<property name="createConnector" value="false" />
</bean>
</amq:managementContext>
<amq:persistenceAdapter>
<amq:journaledJDBC journalLogFiles="5"
dataDirectory="/opt/iona/fuse-esb-3.3.1.9/data/amq"/>
</amq:persistenceAdapter>
<amq:transportConnectors>
<amq:transportConnector uri="tcp://localhost:61617"/>
</amq:transportConnectors>
<amq:networkConnectors>
<amq:networkConnector uri="static://(tcp://kakyou:61616)" />
</amq:networkConnectors>
</amq:broker></beans>
-----------------------------------------------------------------
I would appreciate your input.
Regards,
Anne Diefenbach
- FKIE-KOM -
*************************************************
Forschungsgesellschaft für
Angewandte Naturwissenschaften e. V. (FGAN)
E-Mail: [email protected]
Web: www.fgan.de
************************************************