commons-pool2-中的一些配置

        /**
                    * 鏈接失效檢測相關
                    */
                   // 空閒時進行鏈接測試,會啓動異步evict線程進行失效檢測
                   setTestWhileIdle(true);
                   // 鏈接的空閒的最長時間,須要testWhileIdle爲true,默認5分鐘
                   setMinEvictableIdleTimeMillis(1000 * 60 * 5);
                   // 失效檢測時間,須要testWhileIdle爲true,默認5分鐘
                   setTimeBetweenEvictionRunsMillis(1000 * 60 * 5);
                   // 每次檢查鏈接的數量,須要testWhileIdle爲true
                   setNumTestsPerEvictionRun(100);
                   // 獲取鏈接時檢測鏈接的有效性
                   setTestOnBorrow(true);
                   // 返還鏈接時檢測鏈接的有效性
                   setTestOnReturn(false);
 
                   /**
                    * 鏈接池中鏈接數量相關
                    */
                   // 每一個key對應的池最大鏈接數
                   setMaxTotalPerKey(20);
                   // 總鏈接數
                   setMaxTotal(40);
                   // 每一個key對應的鏈接池最小空閒鏈接數
                   setMinIdlePerKey(5);
                   // 每一個key對應的鏈接池最大空閒鏈接數
                   setMaxIdlePerKey(20);
 
                   /**
                    * 鏈接池無可用鏈接時相關
                    */
                   // 設置爲true時,池中無可用鏈接,borrow時進行阻塞;爲false時,當池中無可用鏈接,拋出NoSuchElementException異常
                   setBlockWhenExhausted(true);
                   // 多個任務須要borrow鏈接時,阻塞時是否採用公平策略,爲true時採用,按照先申請先得到的策略進行borrow操做
                   setFairness(true);
                   // 最大等待時間,當須要borrow一個鏈接時,最大的等待時間,若是超出時間,拋出NoSuchElementException異常,-1爲不限制時間
                   setMaxWaitMillis(-1);
相關文章
相關標籤/搜索