[Redis on Java]Redis Jedis緩衝池配置總結(補充中)
阿新 • • 發佈:2019-01-09
在Jedis初始化時會有一些配置項可以配置, 或者有些框架會提供對應的屬性供配置
下面會有一些常用的引數的意義,可供參考
//連線耗盡時是否阻塞, false報異常,ture阻塞直到超時, 預設true
setBlockWhenExhausted(true);//設定的逐出策略類名, 預設DefaultEvictionPolicy(當連線超過最大空閒時間,或連線數超過最大空閒連線數)
setEvictionPolicyClassName("org.apache.commons.pool2.impl.DefaultEvictionPolicy");
//是否啟用pool的jmx管理功能, 預設true
setJmxEnabled(true);
//是否啟用後進先出, 預設true
setLifo(true);
//最大空閒連線數, 預設8個
setMaxIdle(8);
//最大連線數, 預設8個
setMaxTotal(8);
//獲取連線時的最大等待毫秒數(如果設定為阻塞時BlockWhenExhausted),如果超時就拋異常, 小於零:阻塞不確定的時間, 預設-1
setMaxWaitMillis(-1);
//逐出連線的最小空閒時間 預設1800000毫秒(30分鐘)
setMinEvictableIdleTimeMillis(1800000);
//最小空閒連線數, 預設0
setMinIdle(0);
//每次逐出檢查時 逐出的最大數目 如果為負數就是 : 1/abs(n), 預設3
setNumTestsPerEvictionRun(3);
//物件空閒多久後逐出, 當空閒時間>該值 且 空閒連線>最大空閒數 時直接逐出,不再根據MinEvictableIdleTimeMillis判斷 (預設逐出策略)
setSoftMinEvictableIdleTimeMillis(1800000);
//在獲取連線的時候檢查有效性, 預設false
setTestOnBorrow(false);
//在空閒時檢查有效性, 預設false
setTestWhileIdle(false);
//逐出掃描的時間間隔(毫秒) 如果為負數,則不執行逐出執行緒, 預設-1
setTimeBetweenEvictionRunsMillis(-1);