Configuración del comportamiento del motor de mensajería y del servidor cuando se pierde una conexión del almacén de datos

Si se pierde la conexión entre un motor de mensajería en ejecución y su almacén de datos, debido a una anomalía, o porque se detiene la base de datos para el mantenimiento, puede asegurarse de que el motor de mensajería funciona correctamente después de que se restaure la conexión, configurando el servidor para que se reinicie automáticamente.

Acerca de esta tarea

El comportamiento descrito en este tema se produce sólo si el motor de mensajería está en ejecución y ha establecido bloqueos exclusivos en su almacén de datos.

Mediante la definición de la propiedad personalizada sib.msgstore.jdbcFailoverOnDBConnectionLoss en un motor de mensajería, puede determinar el comportamiento del motor de mensajería y del servidor que lo aloja en el supuesto de que se pierda la conexión del almacén de datos.
Tabla 1. El comportamiento que está determinado por la propiedad personalizada sib.msgstore.jdbcFailoverOnDBConnectionLoss.. La primera columna de la tabla lista los valores de la propiedad personalizada sib.msgstore.jdbcFailoverOnDbConnectionLoss. La segunda columna describe el comportamiento del motor de mensajería cuando se pierde la conexión del almacén de datos.
Valor de propiedad El comportamiento cuando se pierde la conexión del almacén de datos
true (valor predeterminado)
El High Availability Manager detiene el motor de mensajería y el servidor de aplicaciones que lo aloja cuando se produce la comprobación Está activa del siguiente servicio de grupo principal (el valor predeterminado es de 120 segundos). Si un agente de nodo está supervisando el servidor y ha habilitado el reinicio automático en la política de supervisión para el servidor, éste se reinicia. El motor de mensajería se inicia cuando está disponible un servidor apropiado.
Nota: Los mensajes con un nivel de fiabilidad que es inferior al seguro persistente podrían ser aceptados por el motor de mensajería durante el intervalo entre las comprobaciones de Está activo y se podrían perder.
false

El motor de mensajería continúa ejecutándose y aceptando trabajo y, periódicamente, intenta volver a establecer la conexión con el almacén de datos. Si se sigue enviando trabajo al motor de mensajería, mientras el almacén de datos no está disponible, los resultados pueden ser impredecibles y el motor de mensajería podría estar en un estado incoherente cuando se restaure la conexión del almacén de datos.

Nota: Si se sigue enviando trabajo al motor de mensajería, incluso los mensajes no permanentes puede fallar porque el motor de mensajería podría necesitar utilizar el almacén de datos, por ejemplo, para asignar un ID exclusivo a un mensaje, o para mover los mensajes no permanentes fuera de la memoria.
[z/OS]false [z/OS]

El motor de mensajería continúa ejecutándose y aceptando trabajo y, periódicamente, intenta volver a establecer la conexión con el almacén de datos.

Nota: En z/OS, cuando se dispone del entorno de alta disponibilidad está (con la incorporación de servidores WebSphere Application Servers en clúster y grupos de uso compartido de datos de DB2), el valor false es el preferible y el recomendado. Un escenario en el que el valor false no es apropiado es el de un clúster con un solo miembro y ningún servidor al que el motor de mensajería pueda realizar la migración tras error.

Procedimiento

  1. Pulse Integración de servicios -> Buses -> nombre_bus -> [Topología] Motores de mensajería -> nombre_motor -> [Propiedades adicionales] Propiedades personalizadas para ir hasta el panel de propiedades personalizadas para el motor de mensajería.
  2. Pulse Nuevo.
  3. Escriba sib.msgstore.jdbcFailoverOnDBConnectionLoss en el campo Nombre y verdadero en el campo Valor.
  4. Pulse OK (Aceptar).
  5. Guarde los cambios en la configuración maestra.
  6. Reinicie el servidor de aplicaciones.
  7. Si tiene un clúster, repita los pasos anteriores para añadir esta propiedad para cada motor de mensajería del clúster.

Resultados

Si se pierde la conexión entre el motor de mensajería y su almacén de datos, se termina el servidor de aplicaciones que está albergando el motor de mensajería.

Si desea que se reinicie el servidor, asegúrese de que Reinicio automático está seleccionado en la política de supervisión del servidor.

Qué hacer a continuación

Si un servidor se reinicia automáticamente en esta situación, los mensajes CWSID0039E aparecen en los registros de JVM del servidor.

Después de un reinicio de servidor, pulse Integración de servicios -> Buses -> nombre_bus -> [Topología] Motores de mensajería para ver el estado del motor de mensajería. Compruebe que el motor de mensajería se ha reiniciado y está en ejecución.

Si el servidor es miembro de un clúster, compruebe que los miembros del clúster siguen habilitados para la alta disponibilidad, siguiendo las instrucciones que aparecen en el tema Gestión de la alta disponibilidad cuando los motores de mensajería no se han podido iniciar.

Es posible que desee ajustar el sistema para que la pérdida de la conexión de la base de datos se detecte rápidamente, y el motor de mensajería espere un tiempo razonable para que el almacén de datos vuelva a estar disponible antes de intentar iniciarlo en otro servidor.


Icon that indicates the type of topic Task topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tjm_dsconnloss
File name: tjm_dsconnloss.html