我被一个非常简单的问题卡住了。我在我的Spring应用程序中添加了一个咖啡因缓存,这个缓存工作得很好。现在我试图得到这个缓存的统计数据,但我找不到正确的方法…
import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cache.caffeine.CaffeineCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.concurrent.TimeUnit;
@Configuration
@EnableCaching
public class CachingConfig {
@Bean
public CacheManager cacheManager() {
CaffeineCacheManager cacheManager = new CaffeineCacheManager("bin");
cacheManager.setCaffeine(Caffeine.newBuilder()
.maximumSize(10000)
.expireAfterWrite(1, TimeUnit.DAYS)
.recordStats());
return cacheManager;
}
}
如何获取该缓存的统计信息?
注入CacheManager,然后直接获取。
CacheStats stats = ((CaffeineCache) cacheManager.getCache("bin")).getNativeCache().stats();
适合我。