And it looks like these changes, along with setting expireMessagesPeriod=0 on advisory topics, dramatically improves performance. On small numbers of queues (5k) it’s 100x. In large numbers it will be even higher.
On Sat, May 2, 2015 at 3:08 PM, Kevin Burton <bur...@spinn3r.com> wrote: > I’ve found 3 places where CopyOnWriteArrayList was being used and causing > significant performance impact O(N^2) when using large numbers of queues. > > Could I get feedback on these 3 changes? > > > https://github.com/spinn3r/activemq/commit/06ebfbf2a4d9201b57069644bdb7eb8274da0714 > > > https://github.com/spinn3r/activemq/commit/13f606d597b826f5a998866e0fe63e63aa278a24 > > In both of these situations, I think a Set is a better idea than a List. > First, it’s faster. Second, why would we want to cousin something twice? > That’s the only reason I would think a List would be used instead of a Set. > > > > -- > > Founder/CEO Spinn3r.com > Location: *San Francisco, CA* > blog: http://burtonator.wordpress.com > … or check out my Google+ profile > <https://plus.google.com/102718274791889610666/posts> > > -- Founder/CEO Spinn3r.com Location: *San Francisco, CA* blog: http://burtonator.wordpress.com … or check out my Google+ profile <https://plus.google.com/102718274791889610666/posts>