EhCache 内存限制
EhCache Memory limit
在我的代码中,我使用 EhCache 来存储一个对象。代码如下
@Resource(name = "ehCacheManager")
private CacheManager manager;
private Ehcache cache;
public void testCache(){
cache = manager.getCache("ehSubjects");
for loop to read subjects data{ //This loops runs 15051 times
final Element element = new Element(subject.subjectId(), subject);
cache.put(element);
}
}
System.out.println("Cache Size:"+cache.getSize()); //15000
问题是有 15051 个主题对象,但是在循环之后我尝试打印缓存大小时它总是给我 15000。
那么我们可以在 EhCache 中保留的对象数量有限制吗?
问题出在其他队友定义的 ehcache.xml 上。由于 cahce 忽略了其他项目,他将 maxitemsincache 的值设置为 15000。
在我的代码中,我使用 EhCache 来存储一个对象。代码如下
@Resource(name = "ehCacheManager")
private CacheManager manager;
private Ehcache cache;
public void testCache(){
cache = manager.getCache("ehSubjects");
for loop to read subjects data{ //This loops runs 15051 times
final Element element = new Element(subject.subjectId(), subject);
cache.put(element);
}
}
System.out.println("Cache Size:"+cache.getSize()); //15000
问题是有 15051 个主题对象,但是在循环之后我尝试打印缓存大小时它总是给我 15000。
那么我们可以在 EhCache 中保留的对象数量有限制吗?
问题出在其他队友定义的 ehcache.xml 上。由于 cahce 忽略了其他项目,他将 maxitemsincache 的值设置为 15000。