遇到的问题:

计划将cache从caffeine迁移到redis上,当redis未准备好或者连接有问题时,期望能不改代码继续使用caffeine。可以给redis config类加上开关,如果开才加载自定义的config,如:

@ConditionalOnExpression("${redis.enabled:false}")

public class RedisConfig {
    ......
}

但是即使启动未加载RedisConfig类,仍然会报“Connection refused: no further information: localhost/127.0.0.1:6379”,说明启动时仍然默认使用了redis。

怎样才能禁用redis?

解决方法:在启动类中exclude RedisAutoConfiguration

@SpringBootApplication(exclude = {RedisAutoConfiguration.class})
public class DemoApplication {
    ......
}

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐