Reputation: 431
We've set up a hub and spoke topology with two hubs for redundancy. All nodes that connect to the network have a static network connection to the two hubs.
If we bring up a consumer for a particular topic produced by another spoke and then drop one of the hubs, sometimes the consumer will stop getting data. If bringing down hub A causes the consumer to stop receiving data, bringing A back up will restore the consumer's feed. Bringing B down has no effect on the feed. It seems to be inconsistent which hub may affect the consumer.
We expected that with a network of brokers a consumer should always get data as long as a producer is on the network and both are connected to one or more hubs. Is this expectation correct or do we need to change our topology?
Every node has a network connector that looks like this:
static:(tcp://hub1,tcp://hub2)
Upvotes: 2
Views: 652
Reputation: 431
It turns out that staticallyIncludedDestinations on the network connector configuration fixes the issue. Subscriptions are managed solely on the broker with the consumer attached and aren't impacted by a hub going down.
4/25 Update: However network traffic drastically increased. Messages are being forwarded continuously until their TTL is reached. Not really the best solution...
Upvotes: 2