小编Ani*_*esh的帖子

咖啡因缓存刷新/手动或按需重新加载缓存

我在我的应用程序中实现了咖啡因缓存。我正在缓存来自几个静态表的数据。但我想知道我是否可以使用 REST API 或任何其他方式手动或按需刷新/清除/重新加载缓存。任何人都可以提出一种实现这种要求的方法。

我想要类似的东西:- 端点网址,如:- http://localhost:8080/refreshCache

这将在内部触发一些方法并手动清除缓存或重新加载缓存中的新值。

下面是缓存配置:

@Configuration
public class CacheConfig{

     private com.github.benmanes.caffeine.cache.Cache<Object, Object> cache;

    @Bean
    Caffeine<Object,Object> cacheBuilder(){
        return Caffeine.newBuilder()
                .initialCapacity(300)
                .maximumSize(50000)
                .expireAfterAccess(1, TimeUnit.DAYS)
                .removalListener(new CacheRemovalListener())
                .recordStats();
    }

    class CacheRemovalListener implements RemovalListener<Object, Object> {
        @Override
        public void onRemoval(Object key, Object value, RemovalCause cause) {
            System.out.format("Removal listener called with key [%s], cause[%s], evicted [%s] %n", 
                    key , cause.toString(), cause.wasEvicted());
        }
    }

} 
Run Code Online (Sandbox Code Playgroud)

caching caffeine

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

caching ×1

caffeine ×1