Propiedades de origen de datos de WebSphere Application Server

Utilice esta página para establecer las propiedades avanzadas del origen de datos del servidor de aplicaciones. Estas propiedades activan y configuran servicios que el servidor de aplicaciones aplica a orígenes de datos para personalizar el uso de conexiones en el servidor de aplicaciones. Estas propiedades no afectan a las conexiones de la base de datos.

Para acceder a esta página de la consola de administración, pulse una de las vías de acceso siguientes:

Tamaño de la memoria caché de sentencias

Especifica el número de sentencias que se pueden almacenar en la caché para cada conexión. El servidor de aplicaciones coloca en memoria caché una sentencia después de que se cierra dicha sentencia.

El origen de datos de WebSphere Application Server optimiza el proceso de las sentencias preparadas y las sentencias invocables al guardar en la memoria caché aquellas sentencias que no se utilizan en una conexión activa. Ambos tipos de sentencias permiten maximizar el rendimiento de las transacciones entre la aplicación y el almacén de datos.
  • Una sentencia preparada es una sentencia SQL precompilada que se almacena en un objeto PreparedStatement. El servidor de aplicaciones utiliza este objeto para ejecutar la sentencia SQL varias veces, según necesite el tiempo de ejecución de la aplicación, con valores determinados por el tiempo de ejecución.
  • Una sentencia a la que se puede llamar es una sentencia SQL que contiene una llamada a un procedimiento almacenado, que es una serie de sentencias precompiladas que ejecutan una tarea y devuelven un resultado. La sentencia se almacena en el objeto CallableStatement. El servidor de aplicaciones utiliza este objeto para ejecutar un procedimiento almacenado varias veces, según necesite el tiempo de ejecución de la aplicación, con valores determinados por el tiempo de ejecución.

Si la memoria caché de sentencias no es lo suficientemente grande, se descartarán las entradas útiles para hacer sitio a las entradas nuevas. Para determinar cuál es el valor más elevado del tamaño de la memoria caché para así evitar que se descarten entradas en la memoria caché, añada el número de sentencias preparadas de forma exclusiva y sentencias a las que se puede llamar, según determine la serie SQL, la simultaneidad y el tipo de desplazamiento, para cada aplicación que utilice este origen de datos en un servidor determinado. Este valor es el número máximo de sentencias posibles que pueden colocarse en memoria caché en una conexión determinada durante la vida útil del servidor. Si se establece el tamaño de la memoria caché en este valor, significa que en ningún caso se descartará la memoria caché. En general, configure una memoria caché más grande para las aplicaciones con un número más grande de sentencias.

[AIX Solaris HP-UX Linux Windows][IBM i] También puede utilizar Tivoli Performance Viewer para minimizar las veces que se descarta de memoria caché. Utilice una carga de trabajo estándar que represente un número típico de solicitudes de cliente entrantes, utilice un número fijo de iteraciones y utilice un conjunto estándar de valores de configuración.
Nota: cuanto mayor sea la memoria caché de sentencias, más recursos del sistema se retardarán. Por lo tanto, si establece el número en un valor demasiado alto, podrían faltarle recursos porque su sistema no puede abrir varias sentencias preparadas.

Si hay una sentencia determinada que no desea que el servidor de aplicaciones coloque en memoria caché, configure la sugerencia de la agrupabilidad de la sentencia en false. El servidor de aplicaciones no coloca en memoria caché una sentencia si la sugerencia de agrupabilidad se establece en false. La aplicación especifica la sugerencia de agrupabilidad de la sentencia durante el tiempo de ejecución.

En aplicaciones de prueba, el ajuste de la memoria caché de sentencias mejora el rendimiento de un 10% al 20%. No obstante, debido a las limitaciones potenciales de recursos, este proceso de ajuste no siempre es posible.

Información Valor
Tipo de datos Entero
String Los valores predeterminados dependen de la base de datos. Generalmente, este valor es 10. Para las versiones 7.3, 9.2, 9.3 y 9.4 de Informix sin los respectivos arreglos más recientes, el valor predeterminado debe ser 0. Un valor predeterminado de 0 significa que no hay ninguna sentencia de memoria caché.

Habilitar la detección de acceso multihebra

Si está seleccionada, se especifica el mensaje de aviso siguiente en el registro de salida del sistema WebSphere Application Server si varias hebras intentan utilizar simultáneamente el mismo descriptor de conexión. Puede utilizar esta propiedad para depurar problemas de conexión si cree que los problemas pueden deberse a que varias hebras intentan utilizar el mismo descriptor de conexión. Tener varias hebras simultáneamente con el mismo manejador de conexiones es una violación del modelo de programación.

J2CA0167W: Se ha detectado un intento de utilizar simultáneamente el mismo manejador de conexiones por parte de varias hebras. El manejador de conexiones es: {0}.

Habilitar reautenticación de bases de datos

Indica que no puede haber ninguna coincidencia exacta en las conexiones recuperadas de la agrupación de conexiones del servidor de aplicaciones (los criterios de búsqueda de la agrupación de conexiones no incluyen un nombre de usuario ni contraseña). En su lugar, se lleva a cabo la reautenticación de las conexiones en doConnectionSetupPerTransaction() de la clase DataStoreHelper. El tiempo de ejecución del servidor de aplicaciones no proporciona una implementación de reautenticación de conexiones durante el tiempo de ejecución. Por lo tanto, si selecciona este recuadro, debe ampliar la clase DataStoreHelper para proporcionar la implementación del método doConnectionSetupPerTransaction() donde se lleva a cabo la reautenticación. Si no completa este proceso, es posible que el servidor de aplicaciones devuelva conexiones no utilizables. Para obtener más información, consulte la documentación de la API correspondiente al método com.ibm.websphere.rsadapter.DataStoreHelper#doConnectionSetupPerTransaction.

La reautenticación de conexiones puede ayudar a mejorar el rendimiento mediante la reducción de la sobrecarga al abrir y cerrar conexiones, particularmente en aplicaciones que frecuentemente solicitan conexiones con nombres de usuario y contraseñas diferentes.
Evite problemas Evite problemas: No se puede habilitar la reautenticación de base de datos si selecciona TrustedConnectionMapping para el alias de configuración de correlación.gotcha

Habilitar el soporte de optimización de una fase de JMS

Cuando se selecciona esta opción, el servidor de aplicaciones utiliza Java Message Service (JMS) para obtener conexiones optimizadas de este origen de datos. Esta propiedad impide que las aplicaciones JDBC (Java Database Connectivity) compartan las conexiones con las aplicaciones de persistencia gestionada por contenedor (CMP). Esta opción no está disponible si el proveedor de JDBC del origen de datos es un proveedor XA.

Gestionar los manejadores en memoria caché

Especifica si el contenedor realiza un seguimiento de los manejadores en memoria caché, que son manejadores de conexiones que un componente de aplicación mantiene activo entre varios límites de método y transacción. Puede utilizar esta propiedad para depurar problemas de conexión, pero los manejadores de rastreo pueden causar grandes problemas de rendimiento durante el tiempo de ejecución.

Si la propiedad Gestionar los manejadores en memoria caché está seleccionada en la consola de administración y la deselecciona, el campo no será visible para los recursos que están en la versión 7.0 o superior del servidor de aplicaciones. Este campo sólo se muestra si la propiedad manageCachedHandles se establece en true en el archivo resources.xml. Para que el campo esté disponible, cambie el valor de la entrada manageCachedHandles de false a true en el archivo resources.xml o escriba el siguiente mandato Jython en la herramienta wsadmin:
AdminConfig.modify(myDataSourceVariable, '[[manageCachedHandles "true"]]')
Nota: Para cualquier recurso que se ejecuta en la versión 6.x del servidor de aplicaciones, la propiedad Gestionar los manejadores en memoria caché siempre está visible. Por ejemplo, si tiene un nodo que está en la versión 6.1, la entrada del archivo resources.xml no afectará al modo en que se muestra el campo en la consola de administración.
Si desea un método distinto para depurar problemas, utilice las alertas de diagnóstico de múltiples hebras y de componentes cruzados para detectar violaciones del modelo de programación JCA (Java Connector Architecture). Para habilitar estas alertas, seleccione estas opciones en el panel Servidores > Servidores de aplicaciones > servidor_aplicaciones > Rendimiento > Configuración del Asesor de rendimiento y diagnóstico > Configuración del Asesor de rendimiento y diagnóstico. Estas alertas fuerzan al gestor de conexiones a gestionar los manejadores almacenados en la memoria caché, detectan las condiciones de las conexiones y envían alertas.
Nota: Para que estas alertas estén activas, también debe seleccionar Habilitar la infraestructura del Asesor de rendimiento y diagnóstico (Asesor de rendimiento de tiempo de ejecución) en el panel Servidores > Servidores de aplicaciones > servidor_aplicaciones > Rendimiento > Configuración del Asesor de rendimiento y diagnóstico.

Anotar la falta de contexto de transacciones

Especifica si el contenedor emite una entrada en el registro de actividad cuando una aplicación obtiene una conexión sin un contexto de transacción. Estas son excepciones a los requisitos de conexión de modelo de programación de Java Platform, Enterprise Edition (Java EE).

Origen de datos no transaccional

Especifica que el servidor de aplicaciones no incluya en la lista las conexiones de este origen de datos en transacciones globales o locales. Las aplicaciones deben llamar explícitamente a setAutoCommit(false) en la conexión, si desean iniciar una transacción local en la conexión, y deben confirmar o retrotraer la transacción que han iniciado.
Evite problemas Evite problemas: Establezca esta propiedad en true en circunstancias excepcionales, excepto cuando una aplicación JPA (Java Persistence API) requiera tanto orígenes de datos JTA como orígenes de datos que no sean JTA. El origen de datos no JTA requiere de que se establezca esta propiedad en true. gotcha

Utilice el modelo de comprobación de excepciones de WebSphere Application Server

Especifica que el servidor de aplicaciones utiliza el recurso de correlación de errores definido en la ayuda del almacén de datos para identificar errores. El servidor de aplicaciones no sustituye excepciones generadas por el controlador JDBC por excepciones definidas en la correlación de errores de la ayuda del almacén de datos.

Utilice el modelo de correlación de excepciones de WebSphere Application Server

Especifica que el servidor de aplicaciones utiliza el recurso de correlación de errores que se define en la ayuda del almacén de datos para identificar errores, y que el servidor de aplicaciones sustituye las excepciones generadas por el controlador JDBC por excepciones definidas en la correlación de errores de la ayuda del almacén de datos.

Nota: Este modelo de detección de errores funciona con JDBC Versión 3.0 y anterior.

Validar conexiones nuevas

Especifica si el gestor de conexiones debe probar las conexiones recién creadas en la base de datos.

Número de reintentos

Especifica el número de veces que desea volver a intentar la conexión inicial con una base de datos, si la primera operación de prueba previa falla.

Intervalo de reintento

Si selecciona Validar conexiones nuevas, esta opción especifica el período de tiempo, en segundos, que espera el servidor de aplicaciones antes de intentar volver a realizar una conexión si falla el intento inicial.

Validar conexiones agrupadas existentes

Especifica si el gestor de conexiones comprueba la validez de las conexiones agrupadas antes de devolverlas a las aplicaciones.

Intervalo de reintento

Si selecciona Conexiones agrupadas existentes de prueba previa, esta opción especifica el período de tiempo, en segundos, que espera el controlador JDBC para validar una conexión.

Validación por controlador JDBC

Especifica que el servidor de aplicaciones utiliza el controlador JDBC para validar las conexiones. El proveedor JDBC debe dar soporte a JDBC 4.0 o posterior para utilizar esta opción. Esta opción sólo está disponible si está seleccionado Validar nuevas conexiones o Validar conexiones agrupadas existentes.

Evite problemas Evite problemas: Para un origen de datos de Oracle, Validación por controlador JDBC aparece en la consola de administración sólo después de que se haya añadido la propiedad validateNewConnectionTimeout a las [Updated in September 2013]propiedades personalizadas del origen de datos[Updated in September 2013]. La propiedad validateNewConnectionTimeout se utiliza para validación de controlador JDBC 4.0 y se puede especificar con la consola de administración. gotcha

Tiempo de espera

Especifica el tiempo de espera en segundos para probar las conexiones, ya sean nuevas o agrupadas por el servidor de aplicaciones, a la base de datos. Si el tiempo de espera caduca antes de la validación, la conexión se considera inutilizable. Si se han configurado reintentos, se aplica el valor completo del tiempo de espera en cada reintento. Un valor 0 indica que el controlador de JDBC no impone un tiempo de espera en los intentos de validación.
Nota: Esta opción sólo está disponible para los controladores JDBC compatibles con JDBC 4.0.

Validación por serie SQL (en desuso)

Especifica una sentencia SQL que el servidor de aplicaciones envía a la base de datos para probar la conexión. Utilice una consulta que pueda tener un impacto mínimo en el rendimiento. Esta opción sólo está disponible si está seleccionado Validar nuevas conexiones o Validar conexiones agrupadas existentes.

Optimizar para el patrón de conexión get/use/close con la agrupación heterogénea

Optimiza el origen de datos para las aplicaciones que utilizan el patrón de conexión get/use/close. Esta optimización permite que la agrupación de conexiones para el origen de datos comparta conexiones que están en la misma transacción. Con este patrón de optimización, puede compartir una conexión durante una transacción incluso si las conexiones utilizan diferentes propiedades de conexión.

Si utiliza el dispositivo de agrupación heterogénea, primero debe ampliar la definición del origen de datos para poder especificar propiedades de conexión diferentes, o las aplicaciones pueden alterar temporalmente propiedades no esenciales para el origen de datos. Para obtener más información sobre la ampliación de orígenes de datos, consulte la información sobre cómo ampliar definiciones de orígenes de datos DB2 a nivel de aplicaciones.

Nota: Este campo sólo está disponible para los orígenes de datos de DB2.

Intervalo de reintento para la redirección de cliente

Especifica el período de tiempo, en segundos, entre reintentos para la redirección automática de cliente.

Nota: Este campo sólo está disponible para los orígenes de datos de DB2.

Reintentos máximos para la redirección de cliente

Especifica el número máximo de reintentos de conexión que la función de redirección de cliente automática intenta si la conexión primaria con el servidor falla. La propiedad sólo se utiliza cuando se establece Intervalo de reintento para la redirección de cliente.

Nota: Este campo sólo está disponible para los orígenes de datos de DB2.

Nombres de servidor alternativos

Especifica la lista de nombres de servidor alternativo para el servidor de DB2. Si se especifica más de un nombre de servidor alternativo, los nombres deben separarse por comas. Por ejemplo:
host1,host2
Nota: Este campo sólo está disponible para los orígenes de datos de DB2.

Números de puerto alternativos

Especifica la lista de puertos para el servidor de DB2. Si se especifica más de un servidor alternativo, los puertos deben separarse por comas. Por ejemplo:
5000,50001
Nota: Este campo sólo está disponible para los orígenes de datos de DB2.

Nombre JNDI de lista de servidores de redirección de cliente

Especifica el nombre JNDI utilizado para enlazar la lista de servidores de redirección de cliente DB2 con el espacio de nombres JNDI. El servidor de base de datos DB2 utiliza este nombre para buscar la lista de nombres de servidor alternativo cuando la información del servidor alternativo todavía no está en la memoria. Esta opción no está soportada para los orígenes de datos de tipo 2.

Nota: Este campo sólo está disponible para los orígenes de datos de DB2.

Eliminar enlace de la lista de redirección de cliente de JNDI

Se utiliza sólo con la conexión de prueba. Cuando se establece en true, el nombre JNDI de lista de servidores de redirección de cliente se desenlazará del espacio de nombres JNDI después de que se emita una conexión de prueba.

Nota: Este campo sólo está disponible para los orígenes de datos de DB2.


Nombre de archivo: udat_jdbcdatasorprops.html