使用Redisson发出连接Redis集群的问题

问题描述

我正在尝试使用Redisson 2.3.0和Redis 5.0.7连接Redis集群。

用于连接的Java代码

Config config = new Config();
config.useClusterServers()
.addNodeAddress("redis://127.0.0.1:8000");
RedissonClient redisson = Redisson.create(config);

出现以下错误

java.lang.IllegalArgumentException: port out of range:-1
at java.net.InetSocketAddress.checkPort(InetSocketAddress.java:143)
at java.net.InetSocketAddress.(InetSocketAddress.java:224)
at org.redisson.client.RedisClient.(RedisClient.java:93)
at org.redisson.connection.MasterSlaveConnectionManager.createClient(MasterSlaveConnectionManager.java:310)
at org.redisson.cluster.ClusterConnectionManager.connect(ClusterConnectionManager.java:150)
at org.redisson.cluster.ClusterConnectionManager.(ClusterConnectionManager.java:81)
at org.redisson.config.ConfigSupport.createConnectionManager(ConfigSupport.java:172)
at org.redisson.Redisson.(Redisson.java:103)
at org.redisson.Redisson.create(Redisson.java:133)

在Redisson CLusterConnectionManager中从CLUSTER_NODES进行集群配置:

[ClusterNodeInfo [nodeId=4317f285b359ddc3ac08bb85239924509146e475,address=//127.0.0.1:8003@18003,flags=[SLAVE],slaveOf=4118a348827e6107d7e35522a251fd39c5a8f82b,slotRanges=[]],ClusterNodeInfo [nodeId=2f7b93c80d3721b3fb26fe87bc28ed04a63fe0ec,address=//127.0.0.1:8005@18005,slaveOf=8b81c3e1acb4e1959a83267540058d1a6bffa12f,ClusterNodeInfo [nodeId=4118a348827e6107d7e35522a251fd39c5a8f82b,address=//127.0.0.1:8001@18001,flags=[MASTER],slaveOf=null,slotRanges=[[5461-10922]]],ClusterNodeInfo [nodeId=a0770863d893a5b8106a83e247cea2544f99ef36,address=//127.0.0.1:8004@18004,slaveOf=6b9da1bbe38b978a3017406e5c1e310f4706cfc8,ClusterNodeInfo [nodeId=8b81c3e1acb4e1959a83267540058d1a6bffa12f,address=//127.0.0.1:8000@18000,flags=[MYSELF,MASTER],slotRanges=[[0-5460]]],ClusterNodeInfo [nodeId=6b9da1bbe38b978a3017406e5c1e310f4706cfc8,address=//127.0.0.1:8002@18002,slotRanges=[[10923-16383]]]]

调试后发现的原因是: 未正确生成ClientPartition.getMasteraddress()。 地址为//127.0.0.1:8001@18001(由CLUSTER_NODES记录),但它将其读取为主机:18001,端口= -1,即读取集群总线端口。

请建议我在哪里做错误的配置。

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)