Cache Plugin
对应模块:
io.gitee.lcgyl:lcgyl-cache-plugin
统一缓存抽象层,支持多级缓存(Caffeine + Redis)和 Spring Boot 自动配置。
✨ 特性
- ✅ 多级缓存 - L1 (Caffeine) + L2 (Redis)
- ✅ 自动配置 - 引入依赖即可生效,无需额外 Starter
- ✅ 注解支持 - 完美支持 Spring
@Cacheable - ✅ 防雪崩/穿透 - 内置随机过期和空值缓存支持
🚀 快速开始
依赖引入
gradle
implementation 'io.gitee.lcgyl:lcgyl-cache-plugin:2.2.0'配置文件 (application.yml)
yaml
lcgyl:
cache:
type: MULTI_LEVEL # 可选: CAFFEINE, REDIS, MULTI_LEVEL
multi-level:
enable-l1: true
enable-l2: true
l1-update-strategy: ASYNC
# 针对特定缓存的配置
caches:
user_cache:
max-size: 5000
expire-after-write: 10m
cache-null-values: true # 防止穿透
random-expire: true # 防止雪崩使用方法
直接使用 Spring Cache 注解:
java
@Service
public class UserService {
@Cacheable(value = "user_cache", key = "#id")
public User getUserById(String id) {
return userMapper.selectById(id);
}
@CacheEvict(value = "user_cache", key = "#id")
public void updateUser(String id, User user) {
userMapper.update(user);
}
}