在ehcache配置中,maxElementsInMemory的性能是否太大了?

时间:2012-05-31 18:33:10

标签: java hibernate ehcache

只是想知道设置maxElementsInMemory对性能的影响是否比实际使用的高得多?例如,最多10,000个,仅使用100个。

ehcache.xml中

<defaultCache
    eternal="false"
    overflowToDisk="false"
    maxElementsInMemory="10000"
    timeToIdleSeconds="7200"
    timeToLiveSeconds="0"/>

上下文:我正在使用带有hibernate的ehcache,我想要缓存一个表(所有实体)的所有记录。从一个客户到另一个客户,该表中的记录数量各不相同,因此很难设置精确的最大值。

谢谢!

马克

1 个答案:

答案 0 :(得分:4)

不,没有。这只是 max 值。如果您的缓存只包含100个项目,您将支付包含100个元素的地图的费用。上限与此无关。

你可以安全地使用更高的限制(在它下面是一个简单的ConcurrentHashMap)虽然很难证明这样的选择。