1、报错信息:
17:14:57.951 [boundedElastic-1] WARN o.s.b.a.r.RedisReactiveHealthIndicator - [handleFailure,89] - Redis health check failed
org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to 192.168.60.1:6379
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.translateException(LettuceConnectionFactory.java:1689)
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1597)
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1383)
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1366)
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getSharedReactiveConnection(LettuceConnectionFactory.java:1117)
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getReactiveConnection(LettuceConnectionFactory.java:509)
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getReactiveConnection(LettuceConnectionFactory.java:103)
at reactor.core.publisher.MonoSupplier.call(MonoSupplier.java:86)
原因:是整个项目中都引入了健康检查依赖:`
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>`
然后项目启动的时候会检查到我redis是否会被用到,用不到redis就会报错;就算redis是开启的状态也会报错(刚开始还以为是redis不能被外界连接导致,或者是自己的redis配置写得有问题)
解决方法:重写方法,覆盖RedisHealthIndicator中默认去检查redis的方法;
@Configuration
public class RedisHealthIndicator implements HealthIndicator {
@Override
public Health health() {
return Health.up().build();
}
}
刚开始自己还以为是因为docker拉取的redis有问题
1、尝试了关闭虚拟机防火墙
2、尝试了修改redis.conf文件的配置
1万+





