[ 
https://issues.apache.org/jira/browse/ARTEMIS-1273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16081352#comment-16081352
 ] 

ASF GitHub Bot commented on ARTEMIS-1273:
-----------------------------------------

Github user clebertsuconic commented on the issue:

    https://github.com/apache/activemq-artemis/pull/1390
  
    so, if you could make a change to #1395 after merged? (if you agree with 
that PR), in such way that ProcessorBase would take the Queue type that you 
want.


> Bounded OrderedExecutor
> -----------------------
>
>                 Key: ARTEMIS-1273
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1273
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker
>            Reporter: Francesco Nigro
>            Assignee: Francesco Nigro
>
> The default OrderedExecutor is limited by:
> # scattered allocations of linked list nodes
> # no OOM protection
> # always garbage producing
> # uses a not scalable (ie false sharing + CAS based) handmade spin lock 
> # cost of monitoring pending tasks list size O(n)
> # doesn't allow optimized version of task submission (ie single producer)
> The BoundedOrderedExecutor (enabled by default) solves them:
> # uses Array based lock/wait-free queues to have contiguos allocations
> # OOM protected limiting the allowed max size of the queue
> # produce garbage only if the consumer can't keep up with the producer by a 
> configurable amount
> # uses a scalable handmade spin lock (XADD based)
> # cost of monitoring pending tasks list size O(1)
> # allow optimized versions of task submission using different specialized 
> concurrent queues



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to