You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Raffi <ra...@gmail.com> on 2016/03/07 05:19:02 UTC
How to monitor cluster updates from the client
I'm testing JMS applications in a NoB cluster to validate client are
receiving updates as brokers join/leave the cluster; our openwire connector
config:
<transportConnector
name="owire"
uri="tcp://0.0.0.0:61616"
updateClusterClients="true"
updateClusterClientsOnRemove="true"
/>
The client connection URL is below; this is just a virtual IP that proxies
to a router and finds the nearest broker (all of this works fine, no issues)
failover:(tcp://events.ny.com:61616)
I've implemented a simple JMS producer that sends a message every 5s;
between each send, I print information from the connected broker and its
peer brokers:
private void printBrokerPeers() throws JMSException {
BrokerInfo connectedBroker = connection.getBrokerInfo();
BrokerInfo[] brokers = connectedBroker.getPeerBrokerInfos();
log("Broker peer list...");
log("--------------------------------");
for(BrokerInfo bi : brokers){
log("\t" + bi.getBrokerName());
}
}
On startup, the client prints the list of peer brokers, and the list is 100%
consistent with active "masters" in the cluster, but if I kill an active
broker in the list (not the client's connected broker), the list remains
unchanged; it continues to show the broker I stopped. If I start a broker
that was never in the list upon client startup, it never shows up in the
clients broker list.
Is the above code wrong for viewing client-side broker/cluster updates? I
just want to see the list of brokers as it changes from the clients
viewpoint.
--
View this message in context: http://activemq.2283324.n4.nabble.com/How-to-monitor-cluster-updates-from-the-client-tp4708954.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.