1. 程式人生 > >BoneCP資料庫連線池效能上的缺點?

BoneCP資料庫連線池效能上的缺點?

測試環境說明:

硬體環境:CPU1.73G;記憶體:1G

軟體環境:JDK1.6+Eclipse3.4+Tomcat6.0

BoneCP版本:bonecp0.6.4/bonecp0.6.7.2/bonecp0.7.0

使用過程中對BoneCP資料庫連線池的效能是否有缺點存在一些疑問,一直沒有整理,今天大致記錄一下:

1)在開發過程中發現,使用BoneCP資料庫連線池時,如果setPartitionCount()方法以及setMaxConnectionsPerPartition()的值設定過大,有時Tomcat啟動非常慢,甚至無法啟動(TomcatTimeOuts引數,我的設定是45s);同時在進行大資料量匯入時,資料庫操作也非常慢,

CPU佔用率無明顯增加。

2)如果值設定較小,則Tomcat啟動正常,但執行速度只比C3P0略快

3)原以為作為新興的連線池,會隨著版本的升級,效能上會有所完善和改進,不過測試了幾個版本的連線池,感覺效能都差不多。用bonecp0.7.0測試時,測試匯入10000條資料時,分別用BoneCPv0.7.0C3P0v0.9.1.2連線池各測試了5次,平均匯入時間分別為321.89s368.506sBoneCP並無明顯的優勢。

    當然,就以上體驗而言,未必說明BoneCP連線池一定有問題,也可能是我在連線池引數上的設定有問題,使用BoneCP0.7.0測試時,我的設定如下:

不知道用過該連線池的使用者有何高見,請不吝賜教。