jedis配置含义详解

anglehearts 2020-04-03

jedis就是基于java语言的redis客户端,集成了redis的命令操作,提供了连接池管理。

jedis连接池

预先生成一批jedis连接对象放入连接池中,当需要对redis进行操作时从连接池中借用jedis对象,操作完成后归还。这样jedis对象可以重复使用,避免了频繁创建socket连接,节省了连接开销。

Jedis配置优化

对于企业级开发来说,连接池的合理使用是非常重要的,如果设置不当会引起很多不必要的麻烦,容易造成线上的故障。
其实关于配置是一个比较难或者说没有确定答案的部分,这里只能给出一些思路和解决一些异常的方法。

连接池重要配置

为了方便使用,Jedis提供了JedisPoolConfig,它本身继承了GenericObjectPoolConfig设置了一些空闲监测设置

#最大活动对象数    
redis.pool.maxTotal=1000   
#最大能够保持idel状态的对象数     
redis.pool.maxIdle=100 
#最小能够保持idel状态的对象数  
redis.pool.minIdle=50   
#当池内没有返回对象时,最大等待时间   
redis.pool.maxWaitMillis=10000   
#当调用borrow Object方法时,是否进行有效性检查   
redis.pool.testOnBorrow=true   
#当调用return Object方法时,是否进行有效性检查   
redis.pool.testOnReturn=true 
#“空闲链接”检测线程,检测的周期,毫秒数。如果为负值,表示不运行“检测线程”。默认为-1. 
redis.pool.timeBetweenEvictionRunsMillis=30000 
#向调用者输出“链接”对象时,是否检测它的空闲超时; 
redis.pool.testWhileIdle=true 
# 对于“空闲链接”检测线程而言,每次检测的链接资源的个数。默认为3. 
redis.pool.numTestsPerEvictionRun=50 
#redis服务器的IP   
redis.ip=xxxxxx 
#redis服务器的Port   
redis1.port=6379  

相关推荐