使用RedisCluster,在配置文件中配置了一个节点,实际运行的时候显示多个节点

在使用Redis Cluster时,即使只在配置文件中配置了一个Redis节点,也会看到多个节点的信息。这是因为Redis Cluster会自动发现并添加其他节点

当你启动Spring Boot应用程序时,JedisCluster会尝试与配置的节点建立连接。然后,通过与其中一个节点通信,JedisCluster会获取整个集群的拓扑信息,并自动添加其他节点到连接池中。

这就是为什么在运行时显示了多个节点的信息。这些额外的节点是Redis Cluster的一部分,它们是集群中其他实例的代表。

你可以使用 ​JedisCluster#getClusterNodes()​方法来获取JedisCluster当前连接的所有节点的信息。例如:

@Autowired
private JedisCluster jedisCluster;

// ...

Map<String, JedisPool> clusterNodes = jedisCluster.getClusterNodes();
for (Map.Entry<String, JedisPool> entry : clusterNodes.entrySet()) {
    String nodeId = entry.getKey();
    JedisPool jedisPool = entry.getValue();
    // 处理每个节点的信息...
}

请注意,即使在配置文件中只配置了一个节点,这个方法也会返回所有连接的节点信息。

如果你只想连接特定的节点,而不是整个集群,你可以考虑使用单机模式的Redis连接,而不是Redis Cluster。在单机模式下,你可以只连接配置文件中指定的单个Redis节点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值