问题描述
Spring 版本:4.3.13.RELEASE
EhCache 版本:3.1
大家好,我目前遇到了 EhCache 缓存问题。我能够看到缓存是使用我要配置它的属性构建的,但是我没有看到任何缓存的操作。 (名称/类型更改为模糊用例)
@Cacheable(value = "cacheName",cacheManager = "some.local.cacheManager")
public Object findItemInMongo(String param1,String param2,String param3,String param4,Enum param5) {
org.springframework.cache.Cache c = this.cacheManager.getCache("cacheName");
Long size = 0L;
Long miss = 0L;
if (c.getNativeCache() instanceof net.sf.ehcache.Ehcache) {
net.sf.ehcache.Ehcache ehCache = (net.sf.ehcache.Ehcache) c.getNativeCache();
size = ehCache.getStatistics().cacheGetoperation().count().value();
miss = ehCache.getStatistics().cacheMissCount();
}
...
kibanaLogging.submitToKibana(...);
}
如您所见,我可以成功地从管理器手动获取缓存、投射并检查统计信息。在重复运行此事务时,我总是在调试中输入它,并查看推送的 kibana 日志。我有一个不同的 EhCache 实现在这个服务中工作,遵循类似的方法,并且可以看到块永远不会在调试中输入,kibana 日志也不会提交。我有点不明白为什么这个签名没有被缓存。
我可以在调试中反省我的缓存配置:
[ name = cacheName status = STATUS_ALIVE
eternal = false overflowTodisk = false maxEntriesLocalHeap = 100
maxEntriesLocaldisk = 0 memoryStoreevictionPolicy = LRU
timetoLiveSeconds = 3000 timetoIdleSeconds = 0 persistence = none
diskExpiryThreadIntervalSeconds = 120 cacheEventListeners: ;
orderedCacheEventListeners: maxBytesLocalHeap = 0
overflowToOffheap = false maxBytesLocalOffheap = 0 maxBytesLocaldisk = 0 pinned = false ]```
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)