springboot 单机 redis 连接报错 ClusterHostAndPorts must not be null!
时间: 2024-03-01 17:54:09 浏览: 175
这个错误提示表明你在单机模式下使用了 Redis 集群的配置,导致连接失败。可以检查一下你的 Redis 连接配置中是否有以下类似的代码:
```
RedisClusterConfiguration config = new RedisClusterConfiguration(clusterNodes);
```
如果有的话,将其替换为以下代码:
```
RedisStandaloneConfiguration config = new RedisStandaloneConfiguration(host, port);
```
其中 `host` 和 `port` 分别为 Redis 服务器的主机名和端口号。这样可以将 Redis 连接配置为单机模式,解决该报错问题。
相关问题
springboot 单机redis 使用 redisconnectionFactory 导致报错ClusterHostAndPorts must not be null!
如果在使用 `RedisConnectionFactory` 连接 Redis 时出现了 `ClusterHostAndPorts must not be null!` 的错误,可能是因为 `RedisConnectionFactory` 默认是连接 Redis 集群的,而不是单机 Redis。
解决这个问题的方法是在 `RedisConnectionFactory` 的 Bean 配置中指定 `RedisStandaloneConfiguration`,代码如下:
```java
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.connection.RedisStandaloneConfiguration;
import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
@Configuration
public class RedisConfig {
@Bean
public RedisConnectionFactory redisConnectionFactory() {
RedisStandaloneConfiguration redisConfiguration = new RedisStandaloneConfiguration("localhost", 6379);
LettuceConnectionFactory lettuceConnectionFactory = new LettuceConnectionFactory(redisConfiguration);
return lettuceConnectionFactory;
}
}
```
在上述代码中,我们创建了一个 `RedisStandaloneConfiguration` 对象,并指定了 Redis 服务器的主机名和端口号,然后将该对象传递给 `LettuceConnectionFactory` 的构造函数中,以构建一个单机 Redis 连接工厂。
这样配置之后,就能够正常连接 Redis 了。
阅读全文