Protección de una aplicación MDB frente problemas de recursos del sistema
Puede configurar el sistema, de modo que si existe un problema con un recurso del sistema externo dependiente, la aplicación empresarial se detenga antes de que se muevan de forma innecesaria los mensajes a un destino de excepciones. Esta configuración también maneja los problemas ocasionales con mensajes sin bloquear la aplicación de empresa.
Antes de empezar
El destino en el que escucha el MDB debe utilizar un destino de excepciones. Este destino de excepciones puede ser el valor predeterminado del sistema o uno configurado específicamente para el destino.
- La aplicación de empresa que contiene el MDB.
- Los recursos del sistema externo dependientes.
- Un valor aceptable para Umbral de mensaje fallido secuencial, es decir, el número máximo de anomalías secuenciales de entrega de mensajes, después del cual se detiene el MDB. Esta propiedad se aplica a los conjuntos de mensajes.
- Un valor aceptable para el Retardo entre reintentos de mensaje fallido, es decir, el tiempo en milisegundos antes de que un mensaje que falla esté disponible para ser entregado al MDB. Durante este periodo, se pueden entregar otros mensajes, a menos que Umbral de mensaje fallido secuencial y el valor máximo de simultaneidad estén establecidos en 1.
- Un valor aceptable para Entregas máximas fallidas por mensaje, es decir, el número máximo de intentos anómalos para procesar el mensaje, después del que el mensaje se reenvía desde su destino previsto al destino de excepciones. Esta propiedad se aplica a mensajes individuales.
Acerca de esta tarea
- Los mensajes anómalos se reitentan un número finito de veces y, si siguen fallando, se mueven a un destino de excepciones lo que permite que se procesen los mensajes siguientes.
- Los mensajes anómalos se reintentan indefinidamente hasta que se soluciona el problema.
La configuración (1) protege el MDB frente a un mensaje con problema ocasional que impide que se procesen los mensajes posteriores. No obstante, si existe un problema prolongado con un recurso del que depende la aplicación empresarial o la aplicación de nivel empresarial, por ejemplo una base de datos, todos los mensajes que se envían al destino se pueden trasladar al destino de excepciones.
La configuración (2) bloquea la entrega de mensajes hasta que se resuelve el problema del mensaje anómalo original. Esta configuración impide que los mensajes se muevan de forma innecesaria a un destino de excepciones, pero también bloquea los mensajes posteriores en cuanto no se puede procesar un solo mensaje anómalo.
Puede configurar la especificación de activación para un MDB, de modo que el punto final del MDB se detenga automáticamente cuando se detecte un número de anomalías con mensajes secuenciales. Estas anomalías indican un problema con un recurso dependiente. Cuando se resuelve el problema, el punto final del MDB se reinicia manualmente. Esta configuración tolera las anomalías de mensaje ocasionales, y permite mover los mensajes individuales con problemas al destino de excepciones sin bloquear todo el MDB.
Utilice los pasos siguientes para proteger una aplicación empresarial contra anomalías de recursos del sistema externos dependientes.