只是想知道设置maxElementsInMemory对性能的影响是否比实际使用的高得多?例如,最多10,000个,仅使用100个。
ehcache.xml中
<defaultCache
eternal="false"
overflowToDisk="false"
maxElementsInMemory="10000"
timeToIdleSeconds="7200"
timeToLiveSeconds="0"/>
上下文:我正在使用带有hibernate的ehcache,我想要缓存一个表(所有实体)的所有记录。从一个客户到另一个客户,该表中的记录数量各不相同,因此很难设置精确的最大值。
谢谢!
马克
答案 0 :(得分:4)
不,没有。这只是 max 值。如果您的缓存只包含100个项目,您将支付包含100个元素的地图的费用。上限与此无关。
你可以安全地使用更高的限制(在它下面是一个简单的ConcurrentHashMap
)虽然很难证明这样的选择。