Valores de agrupación de conexiones

Utilice esta página para configurar valores de agrupación de conexiones.

Esta página de la consola administrativa es común para una variedad de tipos de recursos, por ejemplo, los orígenes de datos JDBC y las fábrica de conexiones de cola JMS. Para ver esta página, la vía de acceso depende del tipo de recurso, aunque generalmente debe seleccionar una instancia del proveedor de recursos, a continuación, una instancia del tipo de recurso y, por último, debe pulsar Agrupación de conexiones.
Evite problemas: No se da soporte a la agrupación de conexiones en un cliente de aplicaciones. El cliente de aplicaciones llama a la base de datos directamente y no a través de un origen de datos. Si desea utilizar la petición getConnection() desde el cliente de aplicaciones, configure el proveedor JDBC en los descriptores de despliegue de clientes de aplicaciones, utilizando Rational Application Developer (RAD) o una herramienta de ensamblaje. La conexión se establece entre el cliente de aplicaciones y la base de datos. Los clientes de aplicaciones no tienen ninguna agrupación de conexiones, pero es posible configurar valores de proveedor JDBC en los descriptores de despliegue de clientes. gotcha

Por ejemplo, pulse Recursos > JDBC > Proveedores JDBC > proveedor_JDBC > Orígenes de datos > origen_datos > Propiedades de la agrupación de conexiones

La vía de acceso para las fábricas de conexiones de colas JMS es: Recursos > JMS > Fábricas de conexiones de colas > fábrica_conexiones_colas_JMS > [Propiedades adicionales] Propiedades de la agrupación de conexiones.

Pestaña Configuración

Tiempo de espera de conexión

Especifica el intervalo de tiempo en segundos después del cual una petición de conexión excede su tiempo de espera y se genera una ConnectionWaitTimeoutException.

Este valor indica el número de segundos que espera una petición de conexión cuando no hay conexiones disponibles en la agrupación libre y no se pueden crear conexiones nuevas. Generalmente esto es debido a que se ha alcanzado el valor máximo de conexiones de la agrupación de conexiones en particular.

Por ejemplo, si se establece Tiempo de espera de conexión en 300 y está en uso el número máximo de conexiones, el gestor de agrupaciones espera durante 300 segundos a que una conexión física pase a estar disponible. Si no hay una conexión física disponible durante ese intervalo de tiempo, el gestor de agrupaciones inicia una excepción ConnectionWaitTimeout. En la mayor parte de los casos, no debe reintentar el método getConnection(). Si es necesario esperar más tiempo, debe aumentar el valor de Tiempo de espera de conexión. Si la aplicación capta una excepción ConnectionWaitTimeout, revise el uso previsto de la agrupación de conexiones de la aplicación y ajuste la agrupación de conexiones y la base de datos en consecuencia.

Si se establece Tiempo de espera de conexión en 0, el gestor de agrupaciones espera el tiempo necesario hasta que pase a estar disponible una conexión. Esto sucede cuando la aplicación completa una transacción y devuelve una conexión a la agrupación o cuando el número de conexiones cae por debajo del valor de Número máximo de conexiones, lo que permite que se cree una nueva conexión física.

Si Número máximo de conexiones se establece en 0, lo que habilita un número infinito de conexiones físicas, se ignorará el valor de Tiempo de espera de conexión.

Tipo de datos Integer
Unidades Segundos
Valor predeterminado 180
Rango 0 al entero máximo
Número máximo de conexiones

Especifica el número máximo de conexiones físicas que puede crear en esta agrupación.

Éstas son las conexiones físicas con el recurso de programa de fondo. Cuando se ha alcanzado este número, no se crean nuevas conexiones físicas y el solicitante espera a que se devuelva a la agrupación una conexión física que se esté utilizando actualmente o a que se genere una ConnectionWaitTimeoutException. Por ejemplo, si el valor Número máximo de conexiones se establece en 5 y hay cinco conexiones físicas utilizándose, el gestor de herramientas espera durante el periodo de tiempo especificado en Tiempo de espera de conexión a que la conexión esté libre.

Si sabe el número de agrupaciones de conexiones que potencialmente pueden solicitar conexiones desde el programa de fondo (como una base de datos DB2 o un servidor CICS le será más fácil determinar un valor para la propiedad Número máximo de conexiones.

[AIX Solaris HP-UX Linux Windows] [iSeries] Para varios servidores de aplicaciones autónomos que utilicen la misma configuración de origen de datos o la misma configuración de fábrica de conexión J2C, una existe una agrupación de conexiones física distinta para cada servidor. Si clona estos mismos servidores de aplicaciones, WebSphere Application Server implementa una agrupación de conexiones distinta para cada clon.

[z/OS] Tenga en cuenta el número de sirvientes que acceden al mismo recurso; durante la ejecución este número fundamentalmente multiplica el valor Número máximo de conexiones. Cuando los sirvientes invocan el mismo origen de datos JDBC o la misma configuración de fábrica de conexiones J2C, WebSphere Application Server implementa una agrupación de conexiones físicas correspondiente para cada sirviente. Por consiguiente, independientemente existe la misma agrupación de conexiones en cada servidor. El valor Número máximo de conexiones se aplica a cada una de estas agrupaciones.

[AIX Solaris HP-UX Linux Windows] [iSeries] Todas estas agrupaciones de conexiones corresponden a la misma configuración de fábrica de conexiones o de origen de datos. Por lo tanto, todas estas agrupaciones de conexiones pueden solicitar potencialmente conexiones del mismo recurso de programa de fondo a la vez. El único valor Número máximo de conexiones que se establece en el panel de consola se aplica a cada una de estas agrupaciones de conexiones. Por consiguiente, si se establece un valor alto en Número máximo de conexiones puede provocar una carga de solicitudes de conexión que inunde el recurso de programa de fondo.

[z/OS] Potencialmente, cada aplicación que requiere el origen de datos o la fábrica de conexiones en estos sirvientes puede intentar utilizar simultáneamente el recurso. Por lo tanto, las correspondientes agrupaciones de conexiones pueden solicitar conexiones del mismo recurso de programa de fondo a la vez. No establezca un valor de Número máximo de conexiones que pueda causar que la carga de solicitudes de conexión desborde la base de datos u otros sistemas de información de empresa (EIS).

Tipo de datos Integer
Valor predeterminado 10
Rango 0 a un máximo entero

Si el número máximo de conexiones se establece en 0, se ignorará el valor de Tiempo de espera de conexión.

Consejo: Para obtener un mejor rendimiento, establezca la agrupación de conexiones en un valor por debajo del valor de conexiones máximas del contenedor Web. Cuanto más bajos sean los valores, como 10 a 30 conexiones, funcionará mejor que con valores mayores, como 100.

Puede utilizar Tivoli Performance Viewer para encontrar el número óptimo de conexiones de una agrupación. Si el número de conexiones en espera a la vez es mayor que 0, pero la carga de CPU no se aproxima al 100%, considere aumentar el tamaño de la agrupación de conexiones. Si el valor de porcentaje utilizado suele ser bajo cuando la carga de trabajo es la normal, puede optar por disminuir el número de conexiones de la agrupación.

Número mínimo de conexiones

Especifica el número mínimo de conexiones físicas que se deben mantener.

Si el tamaño de la agrupación de conexiones es el mínimo o está por debajo, entonces la hebra Tiempo de espera no utilizado no ignorará las conexiones físicas. No obstante, la agrupación no crea conexiones solamente para asegurar que se mantenga el tamaño de la agrupación de conexiones mínima. Además, si establece un valor para Tiempo de espera superado, se ignorarán las conexiones con una antigüedad caducada, independientemente del valor de tamaño de la agrupación de conexiones mínima.

Por ejemplo, si se establece el Número mínimo de conexiones en 3 y se crea una conexión física, la hebra de Tiempo de espera no utilizado no descarta dicha conexión. Del mismo modo, la hebra no crea automáticamente dos conexiones físicas adicionales para alcanzar el valor de Número mínimo de conexiones.

Tipo de datos Integer
Valor predeterminado 1
Rango 0 al entero máximo
Tiempo de recopilación

Especifica el intervalo en segundos entre cada una de las operaciones de la hebra de mantenimiento de la agrupación.

Por ejemplo, si se establece Tiempo de recopilación en 60, la hebra de mantenimiento de la agrupación se ejecuta cada 60 segundos. El intervalo de Tiempo de recopilación afectará a la precisión de los valores de Tiempo de espera no utilizado y Tiempo de espera superado. Cuanto más pequeño sea el valor del intervalo, mayor será su precisión. Si la hebra de mantenimiento de la agrupación está habilitada, establezca el valor de Tiempo de recopilación para que sea inferior a los valores de Tiempo de espera no utilizado y Tiempo de espera superado. Cuando la hebra de mantenimiento de la agrupación se ejecuta, ésta descarta todas las conexiones que no se han utilizado durante un intervalo de tiempo superior al valor especificado en Tiempo de espera no utilizado hasta que alcanza el número de conexiones especificado en Número mínimo de conexiones. La hebra de mantenimiento de la agrupación también descarta todas las conexiones que han permanecido activas durante un intervalo de tiempo superior al valor especificado en Tiempo de espera superado.

El intervalo de Tiempo de recopilación también afectará al rendimiento. Los intervalos más pequeños significan que la hebra de mantenimiento de la agrupación se ejecuta con más frecuencia y disminuye el rendimiento.

Para inhabilitar la hebra de mantenimiento de la agrupación, establezca Tiempo de recopilación en 0, o bien establezca tanto Tiempo de espera no utilizado como Tiempo de espera superado en O. El método recomendado para inhabilitar la hebra de mantenimiento de la agrupación es establecer Tiempo de recopilación en 0, en cuyo caso se ignoran Tiempo de espera no utilizado y Tiempo de espera superado. No obstante, si se establecen Tiempo de espera no utilizado y Tiempo de espera superado en 0, la hebra de mantenimiento de la agrupación se ejecuta pero solamente se descartan las conexiones físicas que tienen valores de tiempo de espera excedido que no sean cero.

Tipo de datos Integer
Unidades Segundos
Valor predeterminado 180
Rango 0 al entero máximo
Tiempo de espera no utilizado

Especifica el intervalo de tiempo en segundos después del cual se descartan todas las conexiones desocupadas o no utilizadas.

Para obtener un rendimiento óptimo, establezca el valor de Tiempo de espera no utilizado de modo que sea superior al valor de Tiempo de espera de recopilación. Solamente se descartan las conexiones físicas no utilizadas si el número actual de conexiones supera el valor de Número mínimo de conexiones. Por ejemplo, si se establece el valor de Tiempo de espera no utilizado en 120 y se habilita la hebra de mantenimiento de la agrupación (el valor de Tiempo de recopilación no es 0), cualquier conexión física que no se haya utilizado durante dos minutos se descarta.

La precisión y el rendimiento de este valor de tiempo de espera resulta afectado por el valor de Tiempo de recopilación. Para obtener más información, consulte el apartado Tiempo de recopilación.

Tipo de datos Integer
Unidades Segundos
Valor predeterminado 1800
Rango 0 al entero máximo
Tiempo de espera superado

Especifica el intervalo de tiempo en segundos antes de que se descarte una conexión física.

Si se establece el Tiempo de espera superado en 0, se da soporte a las conexiones físicas activas que permanecen en la agrupación indefinidamente. Para obtener un rendimiento óptimo, establezca el valor de Tiempo de espera superado de modo que sea superior al valor de Tiempo de espera de recopilación.

Por ejemplo, si se establece el valor de Tiempo de espera superado en 1200 y el valor de Tiempo de recopilación no es 0, se descarta de la agrupación cualquier conexión física que permanezca durante 1200 segundos (20 minutos). La única excepción es que si la conexión está implicada en una transacción cuando se alcanza el tiempo de espera superado, el servidor de aplicaciones no descartará la conexión hasta que se haya completado la transacción y se haya cerrado la conexión.

La precisión y el rendimiento de este valor de tiempo de espera resulta afectado por el valor de Tiempo de recopilación. Para obtener más información, consulte el apartado Tiempo de recopilación.

Tipo de datos Integer
Unidades Segundos
Valor predeterminado 0
Rango 0 al entero máximo
Política de depuración

Especifica cómo se han de depurar las conexiones cuando se detecta una conexión en punto muerto o un error fatal de conexión.

Los valores válidos son EntirePool y FailingConnectionOnly.

Tipo de datos String
Valores predeterminados
  • EntirePool para las fábricas de conexiones J2C y las fábricas de conexiones relacionadas con JMS
  • EntirePool para los orígenes de datos de WebSphere Versión 4.0
  • EntirePool para los orígenes de datos de la versión actual que se crean a través de la consola administrativa
  • EntirePool para los orígenes de datos de la versión actual con un script de mandatos AdminConfig de wsadmin invocando plantillas JDBC incorporadas en WebSphere Application Server (para obtener información sobre el mandato createUsingTemplate, consulte el artículo del Information Center "Mandatos para el objeto AdminConfig").
  • FailingConnectionOnly para los orígenes de datos con un script en wsadmin sin invocar plantillas JDBC
:
Rango
EntirePool
Todas las conexiones de la agrupación libre se marcan como en punto muerto. Las conexiones que no se estén utilizando se cerrarán inmediatamente. Las conexiones que se estén utilizando se cerrarán en la próxima operación que se realice en ellas y se generará una excepción en punto muerto. Las posteriores peticiones getConnection() de la aplicación dan lugar a que se abran nuevas conexiones con la base de datos. Cuando se utiliza esta política de depuración, existe la pequeña posibilidad de que algunas conexiones de la agrupación se cierren sin necesidad cuando no estén en punto muerto. No obstante, esto es difícil que ocurra. En la mayoría de los casos, la política de depuración de EntirePool es la mejor opción.
FailingConnectionOnly
Sólo se cierra la conexión que ha provocado la excepción en punto muerto. Aunque este valor elimina la posibilidad de que se cierren conexiones válidas sin necesidad, la recuperación desde el punto de vista de la aplicación es más complicada. Como sólo se cierra la conexión que ha fallado actualmente, es muy probable que la próxima petición getConnection() de la aplicación devuelva una conexión de la agrupación que también esté en punto muerto, lo que generará más excepciones de conexión en punto muerto.

La función de conexión pretest intenta aislar una aplicación de las conexiones agrupadas que no sean válidas. Cuando un recurso de programa de fondo, como por ejemplo una base de datos, concluye, es posible que haya conexiones que no sean válidas en la agrupación libre. Esto es generalmente así cuando la política de depuración es failingConnectionOnly; en cuyo caso, la conexión que no es correcta se elimina de la agrupación. Según el tipo de anomalía, es posible que el resto de las conexiones de la agrupación no sean válidas.




Los enlaces marcados (en línea) requieren acceso a Internet.

Conceptos relacionados
Tareas relacionadas
Referencia relacionada
Características de la página de la consola administrativa


Nombre de fichero: udat_conpoolset.html