JSP (Java Server Page) - Tamaño del pool de conexiones

 
Vista:

Tamaño del pool de conexiones

Publicado por hexborg (2 intervenciones) el 14/05/2007 09:04:08
Tengo una aplicación web hecha en JSP que usa tomcat 5.5.23 y se conecta a una base de datos oracle 9i 9.2.0.1 a través de un pool de conexiones.

El problema es que al hacer pruebas de estrés observo que lanza más conexiones de las que están configuradas en el pool y las mantiene abiertas mucho tiempo sin liberarlas. Parece como si no respetara el tamaño del pool.

He hecho de todo y no sé por qué está pasando esto. Si podéis ayudarme os lo agradecería.

El contenido de mi context.xml es el siguiente:

<Context path="/test" docBase="test" debug="0"
reloadable="true" >
<Resource
name="jdbc/test" auth="Container"
type="javax.sql.DataSource"
maxActive="2" maxIdle="1" maxWait="10000"
removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"
username="test" password="test"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.1.109:1521:GLOBALDB" />
</Context>

He bajado los valores de maxActive y maxIdle para hacer las pruebas. Inicialmente eran 100 y 30.

La forma de crear la conexión es esta:

<%
Context initCtx = new InitialContext();
Context ctx = (Context) initCtx.lookup("java:/comp/env");
DataSource fuenteDatos = (DataSource) ctx.lookup("/jdbc/test");
con = fuenteDatos.getConnection();
s = con.createStatement();
%>

El código que cierra las conexiones, que está puesto al final del jsp principal, es el siguiente:

<%-- Cerrar las conexiones --%><%
}
catch(Exception e)
{
// Tratar la excepción
}
finally
{
try
{
if(r != null) r.close();
}
catch(Exception e)
{
// Tratar la excepción
}
try
{
if(s != null) s.close();
}
catch(Exception e)
{
// Tratar la excepción
}
try
{
if(con != null) con.close();
}
catch(Exception e)
{
// Tratar la excepción
}
}

Si me pudierais decir lo que pasa os lo agradecería un montón. Ya no sé qué más hacer.

Muchas gracias y saludos a todos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder