Btw.. it looks like you can set useConsumerPriority=false on the
destination policy entry and get a free 5% performance boost.



On Tue, Jun 2, 2015 at 8:16 AM, Kevin Burton <bur...@spinn3r.com> wrote:

> Both are decent... Just not really for production use. One of the cool
> things about java mission control is the overhead is only about one
> percent. I would love to see other profilers catch  up.
> On Jun 2, 2015 7:26 AM, "Thiago Kronig" <thiagokro...@gmail.com> wrote:
>
>> YourKit <https://www.yourkit.com/> and JProfiler <
>> http://www.ej-technologies.com/products/jprofiler/overview.html> are
>> great
>> commercial tools, and they have licenses for open source projects.
>>
>> On Tue, Jun 2, 2015 at 11:19 AM Kevin Burton <bur...@spinn3r.com> wrote:
>>
>> > On Tue, Jun 2, 2015 at 6:16 AM, Tim Bain <tb...@alumni.duke.edu> wrote:
>> >
>> > > Kevin,
>> > >
>> > > Great finds.  What tool were you using?
>> > >
>> > >
>> > Java Mission Control.. Free for development.. but I think the community
>> > needs a real open source tool.  Pseudo -free isn’t a good idea.
>> >
>> >
>> > > Is it safe to assume you'll submit patches (when you have time) so we
>> > don't
>> > > need to capture these in JIRA?
>> > >
>> >
>> > Might want to create one.  The problem with my patch set, is that I’m
>> still
>> > stuck on 5.10.2.  There’s a bug introduced sometime around 5.11 that
>> only
>> > impacts the memory store.  I haven’t been able to track it down yet so I
>> > can’t retarget my patches to head.  That, and I think one of my patches
>> > doesn’t work with LevelDB so I need to fix that.
>> >
>> > Realistically, I should fix all those issues so that I can move between
>> > versions.
>> >
>> >
>> > >
>> > > Adding a synchronized Multimap<Consumer, Subscription> to
>> > > ManagedRegionBroker looked good to me.  It won't be threadsafe against
>> > > simultaneous registers/unregisters for the same subscription, but it
>> > looks
>> > > like that class already has that problem so I don't think that's a
>> reason
>> > > not to do it.
>> > >
>> >
>> > Or store a second concurrent hash map.  that would fix it.
>> >
>> >
>> > >
>> > > In addConsumerToList(), I think we can do a sorted insertion (iterate
>> > > through the list till you find the right place based on the
>> comparator,
>> > > then insert) to skip the re-sort.  Either we'll be rolling the list
>> or we
>> > > won't, but either way the list will be in sorted order, except that
>> the
>> > > minimum element might not be the first one.  So find the minimum
>> > element's
>> > > index (O(log N), but can be optimized to O(1) for the not-rolling
>> case),
>> > > then do a sorted insert starting at that index and wrapping if
>> necessary.
>> >
>> >
>> > True.. That would definitely make that faster.
>> >
>> > Kevin
>> > --
>> >
>> > 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>

Reply via email to