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 緩存注解來實現緩存

 

修改配置類信息

 

 

 

啟動類加上開啟緩存注解

 

 

 

最后調用方法查看,緩存生效

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM