zoukankan      html  css  js  c++  java
  • Springboot + Caffeine 实现本地缓存

    一.Caffeine 介绍

     Caffeine 是一个高性能、出色的缓存类库,基于Java 8。它的性能非常的出色,API也比较友好,本篇,我们就来介绍一下Caffeine 使用。

    二.引入依赖

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-cache</artifactId>
    </dependency>

    <dependency>
    <groupId>com.github.ben-manes.caffeine</groupId>
    <artifactId>caffeine</artifactId>
    <version>2.7.0</version>
    </dependency>



    三.  Caffeine 配置介绍

    maximumSize:设置缓存最大条目数,超过条目则触发回收 
    maximumWeight:设置缓存最大权重,设置权重是通过weigher方法, 需要注意的是权重也是限制缓存大小的参数,并不会影响缓存淘汰策略,也不能和maximumSize方法一起使用。 
    weakKeys:将key设置为弱引用,在GC时可以直接淘汰
    weakValues:将value设置为弱引用,在GC时可以直接淘汰
    softValues:将value设置为软引用,在内存溢出前可以直接淘汰
    expireAfterWrite:写入后隔段时间过期
    expireAfterAccess:访问后隔断时间过期
    refreshAfterWrite:写入后隔断时间刷新
    removalListener:缓存淘汰监听器,配置监听器后,每个条目淘汰时都会调用该监听器
    writer:writer监听器其实提供了两个监听,一个是缓存写入或更新是的write,一个是缓存淘汰时的delete,每个条目淘汰时都会调用该监听器
    

     

    三. 定义一个配置类用于设置 Caffeine 配置

    四. 调用api 添加查询缓存,缓存生效

    五. 使用spring 缓存注解来实现缓存

    修改配置类信息

    启动类加上开启缓存注解

    最后调用方法查看,缓存生效

     
  • 相关阅读:
    vue关于样式的绑定
    vue插口
    vue组件 父子 通讯
    vue实现翻页功能加高阶函数加购物车
    MySQL 索引面试总结
    phpstorm配置git并解决Terminal 中文乱码(Unicode 编码)的方法
    php 下载图片并打包成Zip格式压缩包
    MySQL5.6升级到5.7详细教程
    windows下安装vue教程
    一致性hash算法详解
  • 原文地址:https://www.cnblogs.com/bt2882/p/15215022.html
Copyright © 2011-2022 走看看