[
https://issues.apache.org/jira/browse/JCR-1112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12530078
]
Thomas Mueller commented on JCR-1112:
-------------------------------------
Hi,
The method getMemoryUsed could be improved by keeping the current value and
only add / subtract when there are changes. Still from time to time a full
recalculation (like now) is required because the size of the objects in the
cache could change. If only one in 20 calls trigger a full recalculation, it
would result in a speed up of about 10 times.
For me, the CacheManager is a workaround; if possible the number of caches
should be reduced to one.
Thomas
> CacheManager interval between recalculation of cache sizes should be
> configurable
> ---------------------------------------------------------------------------------
>
> Key: JCR-1112
> URL: https://issues.apache.org/jira/browse/JCR-1112
> Project: Jackrabbit
> Issue Type: New Feature
> Components: jackrabbit-core
> Reporter: Przemo Pakulski
> Assignee: Thomas Mueller
> Priority: Minor
> Attachments: JCR-1112.txt
>
>
> Currently interval between recaluclation of cahce size is hard coded to 1000
> ms. Resizing/recalculation of cache size is quite expensive method
> (especially getMemoryUsed on MLRUItemStateCache is time consuming)
> Depending on the configuration, we realized that under some load up to 10-15%
> percent of CPU time (profiler metrics) could be spend doing such
> recalculations. It does not seem to be needed to resize cache every second.
> Best this interval should be configurable in external config. file with other
> cache settings (like memory sizes).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.