[ 
https://issues.apache.org/jira/browse/ARTEMIS-3198?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anton Roskvist updated ARTEMIS-3198:
------------------------------------
    Description: 
Add ability to increase concurrency on core bridges. This is useful for 
deploying bridges over high latency networks when the message volume is high. 
More concurrency allows for increased throughput.

 

I have run some tests locally, sending 20k messages across a WAN link. Using 
the default setting I was able to move all messages from point A to point B in: 
2m5s31ms
Adding another bridge, with identical parameters besides the name, the same 20k 
messages where moved in: 1min6s14ms
Adding a third means: 33s.19ms

So this is pretty much linear increase in throughput based on the number of 
bridges configured for the same destination. This works, but if multiple queues 
and destinations are involved the config file gets quite messy. Therefor I 
propose the addition of a concurrency property for these bridges, which 
basically spawns N amount of bridges behind the scenes instead, keeping the 
config file nice and tidy and the messages flying.

Test summary:
20k messages (identical across runs), point A to point B over WAN:


1 bridge : 2m 5s 31ms
2 bridges: 1m 6s 14ms
3 bridges:   33s 19ms


Br,

Anton

  was:Add ability to increase concurrency on core bridges. This is useful for 
deploying bridges over high latency networks when the message volume is high. 
More concurrency allows for increased throughput


> Add ability to increase concurrency on core bridges
> ---------------------------------------------------
>
>                 Key: ARTEMIS-3198
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3198
>             Project: ActiveMQ Artemis
>          Issue Type: New Feature
>          Components: Broker
>            Reporter: Anton Roskvist
>            Priority: Minor
>
> Add ability to increase concurrency on core bridges. This is useful for 
> deploying bridges over high latency networks when the message volume is high. 
> More concurrency allows for increased throughput.
>  
> I have run some tests locally, sending 20k messages across a WAN link. Using 
> the default setting I was able to move all messages from point A to point B 
> in: 2m5s31ms
> Adding another bridge, with identical parameters besides the name, the same 
> 20k messages where moved in: 1min6s14ms
> Adding a third means: 33s.19ms
> So this is pretty much linear increase in throughput based on the number of 
> bridges configured for the same destination. This works, but if multiple 
> queues and destinations are involved the config file gets quite messy. 
> Therefor I propose the addition of a concurrency property for these bridges, 
> which basically spawns N amount of bridges behind the scenes instead, keeping 
> the config file nice and tidy and the messages flying.
> Test summary:
> 20k messages (identical across runs), point A to point B over WAN:
> 1 bridge : 2m 5s 31ms
> 2 bridges: 1m 6s 14ms
> 3 bridges:   33s 19ms
> Br,
> Anton



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to