Mecanismos para la detención de motores de mensajería

Existen varios mecanismos diferentes que puede utilizar para detener los motores de mensajería. También puede especificar dos grados de urgencia distintos: immediate (inmediato) y force (forzar). Al detener un motor de mensajería se impide que envíe mensajes.

Puede detener los motores de mensajería:
  • Mediante la consola administrativa para detener el motor de mensajería
  • Mediante el mandato stop de JMX
  • Mediante el mandato stopServer para detener el servidor de aplicaciones que aloja el motor de mensajería
Puede detener un motor de mensajería en dos modalidades: inmediata y forzar.
Inmediata
En modalidad inmediata, el motor de mensajería se detiene cuando han finalizado todas las operaciones de mensajería actuales en el momento de la solicitud de detención. No se envía ninguna notificación a la aplicación para indicar que el motor de mensajería se está deteniendo. Una vez emitido el mandato de detención, el motor de mensajería no permite que se inicie ninguna operación nueva.

Para cada conexión existente, el motor de mensajería espera que se complete la operación actual, a menos que la operación bloquee el proceso en el motor de mensajería como, por ejemplo, una operación de recepción. En este caso, se interrumpe la operación. Los consumidores asíncronos pueden finalizar sus operaciones, aunque el proceso del mensaje actual puede llevarles una cantidad de tiempo arbitraria. El motor de mensajería retrotrae las transacciones activas y no permite más operaciones en esa conexión. Cuando todas las conexiones están en este estado no válido, el motor de mensajería se detiene.

Forzar
En la modalidad de forzar, el motor de mensajería se detiene de modo que cualquier transacción actual se vacía previamente y las aplicaciones se desconectan forzadamente.

La modalidad de forzar es como la modalidad inmediata con la excepción de que la detención del motor de mensajería interrumpe las operaciones de mensajería en hebras de aplicación que estén realizándose cuando se emite el mandato de detención. En lugar de esperar a que las operaciones de mensajería finalicen, el motor de mensajería las interrumpe y no permite ninguna operación adicional. Cuando todas las conexiones están en este estado no válido, el motor de mensajería se detiene.

La modalidad de forzar completa la conclusión del motor de mensajería lo más rápido posible. Un reinicio posterior del motor de mensajería puede tardar más tiempo que cuando se detiene con la modalidad inmediata, porque se necesitan más acciones de recuperación. Por ejemplo, la detención en modalidad de forzar puede dejar transacciones dudosas y deberá gestionar estos mensajes como se describe en Resolución de transacciones dudosas.

Es posible escalar una detención inmediata que tarda mucho en forzar una detención.

A continuación se muestran las modalidades de detención posibles para los diferentes mecanismos de detención:
Tabla 1. Comparación de mecanismos de detención. La primera columna lista los mecanismos para la detención de los mensajes. La segunda columna indica si se utiliza la modalidad inmediata como mecanismo de detención. La tercera columna indica si se utiliza la modalidad de forzado como mecanismo de detención.
Mecanismo de detención Inmediata Forzar
Consola administrativa
Mandato stop de JMX
Mandato stopServer No
Nota: Si el motor de mensajería emite notifica isAlive=false a HA Manager, todo el proceso del servidor de aplicaciones se detiene sin la finalización de la limpieza ni de las transacciones actuales. Esto es equivalente a una detención forzada.

Icon that indicates the type of topic Concept topic



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