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

Keith Wall updated QPID-7723:
-----------------------------
    Description: 
We are seeing a slowdown in the Java Broker for the 0-10 protocol since 
February 2017.  Investigation with JProfiler is pointing to the introduction of 
the ring queue feature as being a possible cause.   The performance drop is 
most apparent with on the transient profiles, where the drop is around ~2-3%.

The problem is the new call to MessageMetaData_0_10#getStorableSize made from 
AbstractQueueEntryList#updateStatsOnEnqueue. On the 0-10 path, this causes the 
header delivery properties/message properties/non standard delivery properties 
to be encoded in order to compute the store size.  This encoding step is 
separate to the encoding step that takes place when the message is sent to a 
consumer.  The up shot is that the headers for transient message that is not 
flown to disk are now encoded twice rather than once.




  was:
We are seeing a slowdown in the Java Broker for the 0-10 protocol since 
February 2017.  Investigation with JProfiler is pointing to the introduction of 
the ring queue feature as being a possible cause.   The performance drop is 
most apparent with on the transient profiles, where the drop is around ~2-3%.

The problem is the call to MessageMetaData_0_10#getStorableSize made from 
AbstractQueueEntryList#updateStatsOnEnqueue. On the 0-10 path, this causes the 
header delivery properties/message properties/non standard delivery properties 
to be encoded in order to compute the store size.  This encoding step is 
separate to the encoding step that takes place when the message is sent to a 
consumer.  The up shot is that the headers for transient message that is not 
flown to disk are now encoded twice rather than once.





> [0-10] Performance drop ~2% since February on transient auto-ack perf test 
> profile
> ----------------------------------------------------------------------------------
>
>                 Key: QPID-7723
>                 URL: https://issues.apache.org/jira/browse/QPID-7723
>             Project: Qpid
>          Issue Type: Task
>          Components: Java Broker
>            Reporter: Keith Wall
>             Fix For: qpid-java-broker-7.0.0
>
>
> We are seeing a slowdown in the Java Broker for the 0-10 protocol since 
> February 2017.  Investigation with JProfiler is pointing to the introduction 
> of the ring queue feature as being a possible cause.   The performance drop 
> is most apparent with on the transient profiles, where the drop is around 
> ~2-3%.
> The problem is the new call to MessageMetaData_0_10#getStorableSize made from 
> AbstractQueueEntryList#updateStatsOnEnqueue. On the 0-10 path, this causes 
> the header delivery properties/message properties/non standard delivery 
> properties to be encoded in order to compute the store size.  This encoding 
> step is separate to the encoding step that takes place when the message is 
> sent to a consumer.  The up shot is that the headers for transient message 
> that is not flown to disk are now encoded twice rather than once.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to