我正在使用具有以下配置的Redisson连接到Sentinel服务器:
Config config = new Config();
config.useSentinelServers().setMasterName("local")
.addSentinelAddress("redis://localhost:26379", "redis://localhost:26380", "redis://localhost:26381");
RedissonClient client = Redisson.create(config);
当我运行此代码时,我得到以下错误,创建客户端:
Caused by: java.lang.IllegalArgumentException: port out of range:-1
at java.net.InetSocketAddress.checkPort(InetSocketAddress.java:143)
at java.net.InetSocketAddress.<init>(InetSocketAddress.java:224)
at org.redisson.client.RedisClient.<init>(RedisClient.java:105)
at org.redisson.connection.MasterSlaveConnectionManager.createClient(MasterSlaveConnectionManager.java:354)
at org.redisson.connection.SentinelConnectionManager.<init>(SentinelConnectionManager.java:74)
at org.redisson.config.ConfigSupport.createConnectionManager(ConfigSupport.java:258)
at org.redisson.Redisson.<init>(Redisson.java:115)
at org.redisson.Redisson.create(Redisson.java:154)
我想知道我是否遗漏了redisson配置中的任何内容,或者我的Sentinel服务器配置不正确。
答案 0 :(得分:1)
为编辑维基时造成的混乱道歉。我应该说这是对最新版本的反思。
从上面的2.9.3和3.4.3开始,我们引入了对SSL的支持,然后需要指定URI方案以通知所需的连接类型。
答案 1 :(得分:0)
如果我更改原始配置如下,它现在正在运行:
{{1}}
它在文档中具有误导性,因为它的确如此。 https://github.com/redisson/redisson/wiki/2.-Configuration#271-sentinel-settings