todas las transacciones ejecutadas en esta conexión, pero para una transacción web
habitual, estos costes suelen superar el coste de la ejecución de la propia
transacción.
La agrupación de conexiones es una técnica que permite la reutilización de una
infraestructura de conexiones establecida para conexiones posteriores. Cuando se
inicia una instancia de DB2 Connect, se crea una conexión de agentes de
coordinación. Cuando llega una petición de conexión, se asigna un agente a esta
petición. El agente se conectará al servidor de DB2 y se creará una hebra en DB2.
Cuando la aplicación emite una petición de desconexión, el agente no pasa esta
petición al servidor de DB2. En lugar de ello, el agente vuelve a dejarse en la
agrupación. El agente de la agrupación sigue en posesión de la conexión con el
servidor de DB2 y la hebra de DB2 correspondiente. Cuando otra aplicación emite
una petición de conexión, este agente se asigna a esta nueva aplicación. Para
garantizar un funcionamiento seguro, se pasa a la hebra de DB2 información sobre
la identidad del usuario y ésta, a su vez, realiza la autentificación del usuario.
La agrupación de conexiones de DB2 Connect proporciona una mejora notable del
rendimiento en estos entornos. DB2 Connect mantiene conexiones abiertas con la
base de datos en una agrupación disponible. Cuando un cliente solicita una
conexión, ésta puede proporcionarse desde esta agrupación de conexiones
disponibles. La agrupación de conexiones reduce de forma notable el uso de
procesos que suele ser necesaria para abrir y cerrar estas conexiones.
La agrupación de conexiones resulta transparente para las aplicaciones que se
conectan al sistema principal a través de DB2 Connect. Cuando una aplicación
solicita la desconexión del sistema principal, DB2 Connect descarta la conexión de
entrada con la aplicación pero conserva la conexión de salida con el sistema
principal de una agrupación. Cuando una aplicación nueva solicita una conexión,
DB2 Connect utiliza una de la agrupación existente. Al utilizar la conexión ya
existente, se reduce el tiempo de conexión general, así como el elevado coste de
conexión de la CPU en el sistema principal.
Los agentes de DB2 Connect pueden encontrarse en uno de estos dos estados:
desocupado o activo. Un agente está activo cuando está ejecutando trabajo para
una aplicación. Una vez ha finalizado este trabajo, el agente pasa a estado
desocupado en espera de recibir más trabajo de la misma aplicación o de otra
distinta. Todos los agentes desocupados se guardan juntos en lo que se conoce
como la agrupación de agentes desocupados. El tamaño de esta agrupación puede
configurarse utilizando el parámetro de configuración num_poolagents. Este
parámetro indica el número de máximo de agentes desocupados que debe
mantener el sistema. Establecer este parámetro en cero equivale a desactivar la
función de agrupación de conexiones. El valor por omisión de este parámetro de
configuración es AUTOMATIC, con un valor de 100. AUTOMATIC implica que DB2
Connect gestiona el número de agentes desocupados de la agrupación de agentes
desocupados de forma automática.
DB2 Connect no establece conexiones con la base de datos hasta que no recibe la
primera petición del cliente. De forma alternativa, también puede rellenar la
agrupación de agentes desocupados antes de que los clientes realicen una petición.
La agrupación puede rellenarse durante el arranque utilizando el parámetro de
configuración num_initagents. Este parámetro determina el número de agentes
desocupados que deben crearse durante el arranque. Inicialmente, estos agentes
desocupados no tendrán conexiones con el servidor de bases de datos del sistema
principal.
148
Guía del usuario de DB2 Connect