'Ello. For the purposes of keeping everything consistent, I've pushed my example program to a GitHub repository:
https://github.com/io7m/activemq-examples See: https://github.com/io7m/activemq-examples/blob/develop/src/main/java/com/io7m/activemq/examples/ForwardingServers.java I've also included some packet captures in the event that they're necessary. On 2017-07-31T21:54:56 -0600 Tim Bain <tb...@alumni.duke.edu> wrote: > > OK, no subscriber on the proxy broker certainly explains why no messages > are making it to the main broker, so let's dig into that. > > Do you see (via JMX) a networkConnector between the two brokers? And do you > see advisory messages passing from the main broker to the proxy when a > subscriber connects? With dynamically included destinations, if the > advisory messages aren't flowing, you're not going to get any inter-broker > subscriptions established. Via JMX, I see a networkConnector on the proxy broker, but none on the receiver broker: http://ataxia.io7m.com/2017/08/01/jmx.png I've confirmed via watching the network interface with Wireshark that at no point do either of the brokers send any packets to each other whatsoever. A thought suddenly occurred to me... Am I configuring the network connector on the right broker? My thinking was that the proxy is the one that should have the network connector configuration, because messages sent to the proxy should be relayed to the receiver broker. However, the reverse also makes sense... The receiver broker could be the one that requires the network connector configuration because it's subscribing to messages being sent to the proxy. > Also, I'd suggest that you set up the main broker as a standalone broker > instance. I'm actually not sure that the main broker will be standalone, it'll likely still be embedded. Logging is no problem, in any case, as the hosting example program is using Logback with everything down to TRACE level being logged. I'm not sure if a standalone broker gets me more logging than this? I'd like to stick to doing things programatically, as I think it gives other people more of a chance to reproduce any problems I have (they automatically get the same versions of everything I'm using via Maven and so on). > BTW, I may have led you down the wrong path on the mechanism for including > destinations, because I forgot a very important advantage that statically > included destinations have over dynamically included ones: messages will be > forwarded to the main broker even when there are no consumers attached to > the main broker. Got it. I'm not sure yet if I will be using queues, so I'll stick to using the static configuration as it provides both. -- Mark Raynsford | http://www.io7m.com
pgp9bTecxk24Y.pgp
Description: OpenPGP digital signature