`
liyonghui160com
  • 浏览: 761117 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Redis一个异常的解决办法,异常描述:Could not get a resource from the pool

阅读更多

 

 

Redis一个异常的解决办法,异常描述:Could not get a resource from the pool

 

    redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool  
        at redis.clients.util.Pool.getResource(Pool.java:22)  
        at com.derbysoft.jredis.longkeytest.BorrowObject.run(BorrowObject.java:22)  
        at java.lang.Thread.run(Thread.java:662)  
    Caused by: java.util.NoSuchElementException: Timeout waiting for idle object  
        at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1134)  
        at redis.clients.util.Pool.getResource(Pool.java:20)  
        ... 2 more  

 

1、产生原因:客户端去redis服务器拿连接(代码描述的是租用对象borrowObject)的时候,池中无可用连接,即池中所有连接被占用,且在等待时候设定的超时时间后还没拿到时,报出此异常。

2、解决办法:调整JedisPoolConfig中maxActive为适合自己系统的阀值。

<bean id="dataJedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
        <property name="maxActive" value="300"/>
       <property name="maxIdle" value="100"/>
        <property name="maxWait" value="10000"/>
        <property name="testOnBorrow" value="true"/>
</bean>

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics