redis-JedisPoolConfig配置

       
        JedisPoolConfig poolConfig = new JedisPoolConfig();

        //連接耗盡時是否阻塞, false報異常,ture阻塞直到超時, 默認true
        poolConfig.setBlockWhenExhausted(false);

        //設置的逐出策略類名, 默認DefaultEvictionPolicy(當連接超過最大空閒時間,或連接數超過最大空閒連接數)
        poolConfig.setEvictionPolicyClassName("org.apache.commons.pool2.impl.DefaultEvictionPolicy");

        //是否啓用pool的jmx管理功能, 默認true
        poolConfig.setJmxEnabled(true);

        //MBean ObjectName = new ObjectName("org.apache.commons.pool2:type=GenericObjectPool,name=" + "pool" + i); 默 認爲"pool", JMX不熟,具體不知道是幹啥的...默認就好.
        poolConfig.setJmxNamePrefix("pool");

        //是否啓用後進先出, 默認true
        poolConfig.setLifo(true);

        //最大空閒連接數, 默認8個
        poolConfig.setMaxIdle(8);

        //最大連接數, 默認8個
        poolConfig.setMaxTotal(8);

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

        //逐出連接的最小空閒時間 默認1800000毫秒(30分鐘)
        poolConfig.setMinEvictableIdleTimeMillis(1800000);

        //最小空閒連接數, 默認0
        poolConfig.setMinIdle(0);

        //每次逐出檢查時 逐出的最大數目 如果爲負數就是 : 1/abs(n), 默認3
        poolConfig.setNumTestsPerEvictionRun(3);

        //對象空閒多久後逐出, 當空閒時間>該值 且 空閒連接>最大空閒數 時直接逐出,不再根據MinEvictableIdleTimeMillis判斷  (默認逐出策略)
        poolConfig.setSoftMinEvictableIdleTimeMillis(1800000);

        //在獲取連接的時候檢查有效性, 默認false
        poolConfig.setTestOnBorrow(false);

        //在空閒時檢查有效性, 默認false
        poolConfig.setTestWhileIdle(false);

        //逐出掃描的時間間隔(毫秒) 如果爲負數,則不運行逐出線程, 默認-1
        poolConfig.setTimeBetweenEvictionRunsMillis(-1);

        JedisPool pool = new JedisPool(poolConfig, "localhost",6379,10000,"111111");

        Jedis jedis = pool.getResource();
        String jedisStr = jedis.select(0);//選擇庫


轉自:http://www.cnblogs.com/tankaixiong/p/4048167.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章