activemq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ARTEMIS-1586) Reduce GC pressure due to String allocations on Core protocol
Date Wed, 17 Jan 2018 08:34:00 GMT

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

ASF subversion and git services commented on ARTEMIS-1586:
----------------------------------------------------------

Commit 98028cdecc6bd31c86a7d6decfed1961e46be7b2 in activemq-artemis's branch refs/heads/master
from [~michael.andre.pearce]
[ https://git-wip-us.apache.org/repos/asf?p=activemq-artemis.git;h=98028cd ]

ARTEMIS-1586 Refactor to make more generic

* Move byte util code into ByteUtil
* Re-use the new equals method in SimpleString
* Apply same pools/interners to client decode
* Create String to SimpleString pools/interners for property access via String keys (producer
and consumer benefits)
* Lazy init the pools on withing the get methods of CoreMessageObjectPools to get the specific
pool, to avoid having this scattered every where.
* reduce SimpleString creation in conversion to/from core message methods with JMS wrapper.
* reduce SimpleString creation in conversion to/from Core in OpenWire, AMQP, MQTT.

> Reduce GC pressure due to String allocations on Core protocol
> -------------------------------------------------------------
>
>                 Key: ARTEMIS-1586
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1586
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>            Reporter: Francesco Nigro
>            Assignee: Francesco Nigro
>            Priority: Major
>
> The core protocol produce a huge amount of StringValue/SimpleString instances during
CoreMessage decoding of SessionSendMessages.
> Often these instances are the same during the lifetime of a client/server connection:
providing efficient interners would help to reduce the GC pressure, increasing the broker
capacity/scalability.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message