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.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.
|
![]() |
![]() 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
- Pulse para ir hasta el panel de propiedades personalizadas para el motor de mensajería.
- Pulse Nuevo.
- Escriba sib.msgstore.jdbcFailoverOnDBConnectionLoss en el campo Nombre y verdadero en el campo Valor.
- Pulse OK (Aceptar).
- Guarde los cambios en la configuración maestra.
- Reinicie el servidor de aplicaciones.
- 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 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 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.