You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Francesco Nigro (Jira)" <ji...@apache.org> on 2021/01/04 11:05:00 UTC

[jira] [Updated] (ARTEMIS-3049) Reduce live page lookup cost

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

Francesco Nigro updated ARTEMIS-3049:
-------------------------------------
    Description: 
LivePageCacheImpl::getMessage is performing a linked-list-like lookup that can be rather slow if compared to a O(1) lookup on ArrayList-like data structure. 
it's possible to speed it up by:
# using a last accessed buffer cache on the append only chunked list used on LivePageCacheImpl, to speedup the most recent (& nearest) accesses
# using an array with the any fresh reloaded paged messages, in case of cache reload

  was:
LivePageCacheImpl::getMessage is performing a linked-list-like lookup that can be rather slow if compared to a O(1) lookup on ArrayList-like data structure. 
it's possible to speed it up by:
# using a last accessed buffer cache on the append only chunked list used on LivePageCacheImpl, to speedup nearest accesses (very likely to happen with a single consumer)
# using an array with the any fresh reloaded paged messages, in case of cache reload


> Reduce live page lookup cost
> ----------------------------
>
>                 Key: ARTEMIS-3049
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3049
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: Broker
>    Affects Versions: 2.16.0
>            Reporter: Francesco Nigro
>            Assignee: Francesco Nigro
>            Priority: Major
>
> LivePageCacheImpl::getMessage is performing a linked-list-like lookup that can be rather slow if compared to a O(1) lookup on ArrayList-like data structure. 
> it's possible to speed it up by:
> # using a last accessed buffer cache on the append only chunked list used on LivePageCacheImpl, to speedup the most recent (& nearest) accesses
> # using an array with the any fresh reloaded paged messages, in case of cache reload



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