Redis Pool
Jedis获取连接池:
- 获取 Jedis实例需要从 JedisPool中获取
- 用完 Jedis实例需要返还给 JedisPool
- 如果 Jedis在使用过程中出错,则也需要还给 JedisPool
代码案例:
代码
- JedisPoolUtil
- Demo5
---- JedisPool. getResource();
配置总结all:
- JedisPool的配置参数大部分是由 JedisPoolConfig的对应项来赋值的。
- maxActive:控制一个pool可分配多少个jedis实例,通过 pool. getResource()来获取;如果赋值为-1,则表示不限制;如果pool已经分配了maxActive个jedis实例,则此时poo的状态为 exhausted。
- maxIne:控制一个pool最多有多少个状态为idle(空闲)的jedis实例;
whenExhaustedAction:表示当pool中的jedis实例都被allocated完时,pool要采取的操作;默认有三种:
WHEN_EXHAUSTED_FAIL–>表示无jedis实例时,直接抛出 NoSuchElementException;
WHEN_EXHAUSTED_ BLOCK–>则表示阻塞住,或者达到 maxWait时抛出 JedisConnectionException;
WHEN_EXHAUSTED_GROW–>则表示新建一个jedis实例,也就说设置的 maxActive无用;- maxWait:表示当borrow一个