And I could probably also use the max-messages-per-poll attribute in order to poll more messages from high-priority channels, right?
I'm thinking of using the following configuration:
Code:
<channel id="InternalDistributionChannel">
<queue capacity="500"/>
</channel>
<bridge input-channel="InternalDistributionChannel" output-channel="DistributionChannel">
<poller send-timeout="-1" max-messages-per-poll="{distribution.rate}>
<interval-trigger interval="${distribution.interval}"/>
</poller>
</bridge>
<channel id="DistributionChannel" >
<queue ref="DistributionQueue"/>
</channel>
The DistributionQueue is a HazelCast queue so it is distributed across multiple JVMs. The ${distribution.interval} and ${distribution.rate} will be given different values depending on the priority of the component upstreaming to the DistributionChannel. This way the DistributionChannel will hold a mix of messages which represents a prioritized distribution.
Will appreciate any comments. Thanks,
Shahahr