Ehcache 2.10.6命中统计信息未增加

问题描述 投票:0回答:1

我已经在我的一个项目中设置了缓存,以及如下所示的自定义运行状况指示器:

@Component
public class CustomHealthIndicator extends AbstractHealthIndicator
{

    @Override
    protected void doHealthCheck(Health.Builder builder)
    {
        CacheManager cacheManagerInstance = CacheManager.getInstance();
        Ehcache cache = cacheManagerInstance.getCache("myCache");

        builder.up()
                .withDetail("Cache Size", cache.getSize())
                .withDetail("Cache Hit Count", cache.getStatistics().cacheHitCount())
                .withDetail("Cache Miss Count", cache.getStatistics().cacheMissCount())
                .withDetail("Cache Put Count", cache.getStatistics().cachePutCount())
                .withDetail("Cache Remove Count", cache.getStatistics().cacheRemoveCount())
                .withDetail("Cache Expired Count", cache.getStatistics().cacheExpiredCount());
    }

当我在本地运行它并转到localhost:8080 / actuator / health时,所有其他统计信息都会更新,但点击次数不会。

{“状态”:“ UP”,“详细信息”:{“缓存大小”:9,“缓存命中计数”:0,“缓存未命中计数“:9,”高速缓存放置计数“:9,”高速缓存删除计数“:0,”高速缓存过期计数“:0}}

我在其他项目中访问缓存的代码是:

Cacheable cachedResult = CacheManager.getInstance().getCache(request);
if (cachedResult != null)
{
    CustomResponse response = (CustomResponse) cachedResult.getObject();
    return response;
}

我可以确认已输入此块,并且缓存中确实有数据。

我不知道为什么点击量统计信息不会被更新。任何帮助,将不胜感激!

java spring spring-boot ehcache spring-boot-actuator
1个回答
0
投票

结果是我的对象未正确序列化,因此在缓存中搜索它们时找不到它们。

© www.soinside.com 2019 - 2024. All rights reserved.