activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From AntonR <>
Subject Disable prefetch buffer check?
Date Fri, 09 Mar 2018 11:19:26 GMT

I have encountered what I believe is a fringe issue with forwards within a
network of brokers.

The setup I am running features multiple components posting and reading
messages to each other, where the larger flows are connected to all brokers
at once for increased throughput, whereas the small components just connect
randomly and from time to time rely on internal forwards to get their

Since we always want to prefer local consumers to reduce unnecessary traffic
between brokers, we use the setting "decreaseNetworkConsumerPriority".
Everything works as expected, except for when any of the "larger" components
becomes unavailable and gets a backlog. This generates extreme amounts of
forwards and my analysis is that it happens because the prefetch buffer of
the receiving component is full.

This seems to trigger a forward, and I can understand the logic by why it
does that... the issue though, is that all consumers on the receiving broker
also has all their prefetch buffers full, so that broker also forwards the
message... this keeps on going until all backlog is processed.

So my question is, can I either A, change something in my setup to prevent
the issue, or B, have the prefetch buffer be a non factor in determining if
there are available consumers on the broker or not. Maybe a configurable


Sent from:

View raw message