使用spring-data-redis集群redis, 20
但是一直报org.springframework.data.redis.RedisConnectionFailureException:Couldnotgetaresou...
但是一直报org.springframework.data.redis.RedisConnectionFailureException: Could not get a resource from the pool; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool 异常,网上是说要么没启动redis,或者没有关闭防火墙。但是我发誓我这边绝对能telnet通集群的每个端口号,redis集群也都是开的!这是为什么呢?求大神帮忙!
展开
1个回答
展开全部
用的是什么集群方式,JedisSentinelPool 还是ShardedJedisPool。
如果用的是前者,配置是需要连接sentinel端口的(默认26379),不是连接redis端口(6379)。
或者把spring相关配置文件贴出来一下。
<!-- 分片式redis集群配置 -->
<bean id="jedisShardInfo1" class="redis.clients.jedis.JedisShardInfo">
<constructor-arg name="host" value="127.0.0.1" />
<constructor-arg name="port" value="6379 />
</bean>
<bean id="jedisShardInfo2" class="redis.clients.jedis.JedisShardInfo">
<constructor-arg name="host" value="127.0.0.1" />
<constructor-arg name="port" value="6380" />
</bean>
<bean id="shardedJedisPool" class="redis.clients.jedis.ShardedJedisPool">
<constructor-arg index="0" ref="jedisPoolConfig" />
<constructor-arg index="1">
<list>
<ref bean="jedisShardInfo1" />
<ref bean="jedisShardInfo2" />
</list>
</constructor-arg>
</bean>
<!-- 主从Redis + Sentinel集群缓存配置 -->
<bean id="jedisSentinelPool" class="redis.clients.jedis.JedisSentinelPool">
<constructor-arg index="0" value="mymaster" />
<constructor-arg index="1">
<set>
<value>127.0.0.1:26379</value>
<value>127.0.0.1:26380</value>
<value>127.0.0.1:26381</value>
</set>
</constructor-arg>
<constructor-arg index="2" ref="jedisPoolConfig" />
</bean>
如果用的是前者,配置是需要连接sentinel端口的(默认26379),不是连接redis端口(6379)。
或者把spring相关配置文件贴出来一下。
<!-- 分片式redis集群配置 -->
<bean id="jedisShardInfo1" class="redis.clients.jedis.JedisShardInfo">
<constructor-arg name="host" value="127.0.0.1" />
<constructor-arg name="port" value="6379 />
</bean>
<bean id="jedisShardInfo2" class="redis.clients.jedis.JedisShardInfo">
<constructor-arg name="host" value="127.0.0.1" />
<constructor-arg name="port" value="6380" />
</bean>
<bean id="shardedJedisPool" class="redis.clients.jedis.ShardedJedisPool">
<constructor-arg index="0" ref="jedisPoolConfig" />
<constructor-arg index="1">
<list>
<ref bean="jedisShardInfo1" />
<ref bean="jedisShardInfo2" />
</list>
</constructor-arg>
</bean>
<!-- 主从Redis + Sentinel集群缓存配置 -->
<bean id="jedisSentinelPool" class="redis.clients.jedis.JedisSentinelPool">
<constructor-arg index="0" value="mymaster" />
<constructor-arg index="1">
<set>
<value>127.0.0.1:26379</value>
<value>127.0.0.1:26380</value>
<value>127.0.0.1:26381</value>
</set>
</constructor-arg>
<constructor-arg index="2" ref="jedisPoolConfig" />
</bean>
更多追问追答
追问
有字数限制,贴不出来。
追答
只贴redis配置注解就可以了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |