[ 
https://issues.apache.org/jira/browse/VELOCITY-648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12658978#action_12658978
 ] 

Jarkko Viinamäki commented on VELOCITY-648:
-------------------------------------------

It's very very difficult to create a bounded map that performs as well as the 
ConcurrentHashMap - especially using the LRU algorithm. 

Should we make default value for defaultcache 0 so that ConcurrentHashMap would 
kick in by default? If the user then runs into OutOfMemory problems (too many 
templates in memory), he could change to bounded LRUMap. This might be ok since 
template memory consumption has decreased significantly since 1.5. Of course 
this might surprise many users who expect the same default behaviour that was 
in earlier releases.

> Non zero resource cache size slower
> -----------------------------------
>
>                 Key: VELOCITY-648
>                 URL: https://issues.apache.org/jira/browse/VELOCITY-648
>             Project: Velocity
>          Issue Type: Improvement
>          Components: Engine
>            Reporter: Byron Foster
>             Fix For: 1.7
>
>
> In performance testing I found that setting the 
> resource.manager.defaultcache.size property to 0 increases performance by 
> about 30%.   The reason for this is that when the cache size is set to 0 
> Velocity uses the java.util.concurrent.ConcurrentHashMap container which 
> provides better thread concurrency.  when the cache size is set to a non-zero 
> value Velocity uses the org.apache.commons.collections.map.LRUMap container, 
> which provides poor concurrency.  The problem is that It's unclear if there 
> is a container that provides both good concurrency, and has a max size 
> setting.
> The default cache size is 89, which uses the slower LRUMap, and the end user 
> is non the wiser.  The best solution would be to find a container that can be 
> used in both cases that performs as well as the ConcurrentHashMap, otherwise 
> a discussion in the documentation is probably warranted.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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

Reply via email to