2012-11-20 65 views
0

我在我的java應用程序中使用Spring Ibatis進行數據庫管理。我需要啓用連接池來提高應用程序的性能。啓用連接池Spring ibatis

我添加下列屬性SqlMapConfig.xml文件,使彙集

<transactionManager type="JDBC" commitRequired="false"> 
    <dataSource type="SIMPLE"> 
     <property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/> 
     <property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost:3306/xxxxx"/> 
     <property name="JDBC.Username" value="xxxxxx"/> 
     <property name="JDBC.Password" value="xxxxxxx"/> 
     <property name="Pool.MaximumActiveConnections" value="50"/> 
     <property name="Pool.MaximumIdleConnections" value="20"/> 

    </dataSource> 
    </transactionManager> 

連接,但我找不到任何明顯的性能changes.Do我需要進行其他任何更改或設置更改啓用連接池?

以下JAR文件在我的構建路徑添加

的iBATIS的2.3.4.726.jar ibatis2,共2.1.6.589.jar ibatis2-道2.1.6.589.jar

+0

我不知道你是怎麼測試的。但設置連接池默認情況下不會提高性能。如果您的游泳池尺寸太大,甚至可能會變得更糟。如果你的測試腳本是連續的,那麼池將無法幫助你。 –

回答

0

我也注意到您不能在啓動過程中設置最少的一組連接。因此,在測試開始時的50個同時請求都將嘗試設置數據庫連接。就像在單一連接情況下一樣。嘗試使用具有DataSource的實際連接池實現。或者確保在游泳池填滿後測試您的表現。

嘗試使用真實池實現。 JDBC池非常流行,可避免較舊的池實現具有的某些鎖定問題。請參閱http://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html

還測量您的表現,並確保您確實在使用連接池。我已經看到在整個應用程序上共享一個連接,這也可以解釋你正在經歷的事情。

0

嘗試使用數據源類型爲POOLED而不是SIMPLE。

<dataSource type="POOLED">