背景:希望一个统一的开关开放和关闭缓存
结论:运行时通过nacos配置目前发现无法设置,
只能通过配置开关后,重启服务器实现
application.yml配置
openCache: false
@Configuration
public class CacheConfig {
@Value("${openCache}")
Boolean openCache;
@Bean("caffeineCacheManager")
public CacheManager cacheManager() {
if(openCache) {
CaffeineCacheManager cacheManager = new CaffeineCacheManager();
cacheManager.setCaffeine(Caffeine.newBuilder()
.expireAfterWrite(10, TimeUnit.SECONDS)
// 初始的缓存空间大小
.initialCapacity(100)
// 缓存的最大条数
.maximumSize(1000));
return cacheManager;
}
return new NoOpCacheManager();
}
}