1
マックスアクティブな接続:Tomcatのデータソース - 私は以下のコードを使用して1に、最大のアクティブな接続を設定
ConnectionPool initializePool(DataSource dataSource) {
if (!(org.apache.tomcat.jdbc.pool.DataSource.class.isInstance(dataSource))) {
return null;
}
org.apache.tomcat.jdbc.pool.DataSource tomcatDataSource = (org.apache.tomcat.jdbc.pool.DataSource) dataSource;
final String poolName = tomcatDataSource.getName();
try {
ConnectionPool pool = tomcatDataSource.createPool();
pool.getPoolProperties().setMaxActive(1);
pool.getPoolProperties().setInitialSize(1);
pool.getPoolProperties().setTestOnBorrow(true);
return pool;
} catch (SQLException e) {
logger.info(String.format(" !--! creation of pool failed for %s", poolName), e);
}
return null;
}
今使用してスレッドが、私は、DBへの同時接続数を開きました。私はまた、下記のコードを使用して現在の有効な接続数をプリントアウトしました。
System.out.println("Current Active Connections = " + ((org.apache.tomcat.jdbc.pool.DataSource) datasource).getActive());
System.out.println("Max Active Connections = " + ((org.apache.tomcat.jdbc.pool.DataSource) datasource).getMaxActive());
次のような結果が表示されます。アクティブな接続が1より大きいと表示されていますが、最大アクティブな接続を1に制限したいと思います。設定が必要な他のパラメータはありますか?
現在のアクティブ接続= 1
EDIT = 9つの
マックスアクティブな接続:私はアクティブ最大として15または20にしようとすると、しかし、それはそれぞれ常に15または20に制限されています。
おかげ@Issamで試してみてください。私はそれを試しましたが、それは同じです –