Ada*_*s.H 8 java caching guava
我正在使用Guava Cache lib,我想检查缓存的统计信息,这是我的代码:
refreshCache = CacheBuilder.newBuilder()
.refreshAfterWrite(1, TimeUnit.MINUTES)
.maximumSize(5)
.recordStats()
.build(
new CacheLoader<String, Map<String,Object>>() {
public Map<String,Object> load(String key) throws Exception {
loader();
}
});
stats = refreshCache.stats();
delta = refreshCache.stats()
.minus(stats);
}
logger.info("Stats:{}",stats);
logger.info("delta:{}",delta);
Run Code Online (Sandbox Code Playgroud)
我打电话recordeStats()
来激活统计数据,但是当我打印统计数据时,它全部为0.
Rol*_*ger 32
您忘记通过添加recordStats()
来激活缓存记录CacheBuilder.newBuilder()
.
根据JavaDoc:
缓存统计信息根据以下规则递增:
查找特别定义为调用其中一个方法LoadingCache.get(Object),LoadingCache.getUnchecked(Object),Cache.get(Object,Callable)或LoadingCache.getAll(Iterable).