Jedis之JedisPoolConfig


JedisPoolConfig繼承關系

JedisPoolConfig需要依賴Apache common pool,其中pool配置依賴 common pool中的BaseObjectPoolConfig,該類中定義了相關屬性的缺省值,在JedisPoolConfig中定義了相關的屬性。屬性值如下

參數

setTestWhileIdle();

true

    setMinEvictableIdleTimeMillis();

60000

    setTimeBetweenEvictionRunsMillis();

30000

    setNumTestsPerEvictionRun();

-1

 

 

                              Jedispoolconfig繼承關系圖

JedisPoolConfig參數一覽

參數

說明

setBlockWhenExhausted(boolean blockWhenExhausted)

當池中的資源耗盡時是否進行阻塞,設置false直接報錯,true表示會一直等待,直到有可用資源

setEvictionPolicyClassName(String evictionPolicyClassName)

設置逐出策略,默認策略為

"org.apache.commons.pool2.impl.DefaultEvictionPolicy"

 

setFairness(boolean fairness)

當從池中獲取資源或者將資源還回池中時 是否使用java.util.concurrent.locks.ReentrantLock.ReentrantLock 的公平鎖機制,默認為false

setJmxEnabled

設置是否啟用JMX,默認true

setJmxNameBase(String jmxNameBase)

設置JMX基礎名

setJmxNamePrefix(String jmxNamePrefix)

設置JMX前綴名,默認值pool

setLifo(boolean lifo)

設置連接對象是否后進先出,默認true

setMaxIdle(int maxIdle)

設置最大空閑連接數,默認為8

setMaxTotal(int maxTotal)

設置最大連接數,默認18

setMaxWaitMillis(long maxWaitMillis)

獲取連接時的最大等待毫秒數(如果設置為阻塞時BlockWhenExhausted),如果超時就拋異常小於零:阻塞不確定的時間,  默認-1

setMinEvictableIdleTimeMillis(long minEvictableIdleTimeMillis)

設置連接最小的逐出間隔時間,默認1800000毫秒

setMinIdle(int minIdle)

設置無連接時池中最小的連接個數,默認連接0

setNumTestsPerEvictionRun(int numTestsPerEvictionRun)

每次逐出檢查時,逐出連接的個數

setSoftMinEvictableIdleTimeMillis(softMinEvictableIdleTimeMillis);

對象空閑多久后逐出當空閑時間>該值  空閑連接>最大空閑數 時直接逐出,不再根據MinEvictableIdleTimeMillis判斷

setTestOnBorrow(boolean testOnBorrow)

從池中獲取連接時是否測試連接的有效性,默認false

setTestOnCreate(boolean testOnCreate)

在連接對象創建時測試連接對象的有效性,默認false

setTestOnReturn(boolean testOnReturn)

在連接對象返回時,是否測試對象的有效性,默認false

setTestWhileIdle(boolean testWhileIdle)

在連接池空閑時是否測試連接對象的有效性,默認false

setTimeBetweenEvictionRunsMillis(

long timeBetweenEvictionRunsMillis)

設置連接對象有效性掃描間隔,設置為-1,則不運行逐出線程


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM