我是靠谱客的博主 正直抽屉,这篇文章主要介绍本地缓存实现Caffeine,现在分享给大家,希望可以做个参考。

@Configuration
public class CaffeineCacheConfig {

    @Bean
    public Cache<Long, Item> itemCache() {
        return Caffeine.newBuilder().
                initialCapacity(100)
                .maximumSize(10_100).
                build();
    }

    @Bean
    public Cache<Long, ItemStock> stockCache() {
        return Caffeine.newBuilder().
                initialCapacity(100)
                .maximumSize(10_100).
                build();
    }
}

如果本地缓存获取到直接返回,没有获取到查询数据库放入本地缓存然后返回

 @GetMapping("/{id}")
    public Item findById(@PathVariable("id") Long id){
        return itemCache.get(id,key->{
            return itemService.query()
                    .ne("status", 3).eq("id", key)
                    .one();
        });

    }

    @GetMapping("/stock/{id}")
    public ItemStock findStockById(@PathVariable("id") Long id){
        return stockCache.get(id,key->{
            return stockService.getById(key);
        });

    }

最后

以上就是正直抽屉最近收集整理的关于本地缓存实现Caffeine的全部内容,更多相关本地缓存实现Caffeine内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(113)

评论列表共有 0 条评论

立即
投稿
返回
顶部