Gestión de mensajes con puntos finales de mensaje

Gestione la entrega de mensajes para los beans controlados por mensaje (MDB) que se desplieguen como puntos finales de mensaje. Los puntos finales de mensaje son beans gestionados (MBeans) para adaptadores de recursos de entrada compatibles con Java™ Platform, Enterprise Edition (Java EE) Connector Architecture (JCA) Versión 1.5.

Acerca de esta tarea

El servidor de aplicaciones proporciona MBeans de punto final de mensaje para ayudarle a gestionar la entrega de un mensaje a los beans controlados por mensaje que actúen como escuchas en puntos finales específicos, que son destinos, y a gestionar los recursos del sistema de información de empresa (EIS) que estos beans gestionados por mensaje utilizan. Los beans controlados por mensaje que se despliegan como puntos finales de mensaje no son lo mismo que los beans controlados por mensaje que se configuran contra un puerto de escucha. Los beans controlados por mensaje que se utilizan como puntos finales de mensaje deben desplegarse con una ActivationSpecification que se define dentro de una configuración de adaptador de recursos para JCA Versión 1.5.
Con los MBeans de punto final de mensaje, puede activar y desactivar puntos finales específicos dentro de las aplicaciones para garantizar que los mensajes se entreguen sólo a beans controlados por mensaje a la escucha que interactúen con recursos de EIS en buen estado. Esta posibilidad permite optimizar el rendimiento de las aplicaciones JMS en situaciones donde un recurso de EIS no funciona como se esperaba. La entrega de mensajes a un punto final suele fallar cuando el bean controlado por mensaje que está a la escucha invoca una operación contra un recurso que no está en buen estado. Por ejemplo, puede que un proveedor de mensajería, que sea un adaptador de recursos de entrada que sea compatible con JCA Versión 1.5, no consiga entregar los mensajes a un punto final cuando su bean controlado por mensaje subyacente intente confirmar transacciones contra un servidor de base de datos que no responda.
Nota: Diseñe los beans controlados por mensaje para delegar el proceso empresarial a otros beans de empresa. No acceda a los recursos de EIS directamente en el bean controlado por mensaje, sino indirectamente a través de un bean delegado.
Los MBeans de punto final de mensaje mitigan dos problemas inherentes a las aplicaciones que proporcionan puntos finales de mensaje que acceden a recursos:
  • Los mensajes fallidos exigen un proceso adicional, como entregarlos de nuevo al punto final a la escucha o redirigirlos a destinos alternativos que procesen los mensajes fallidos. Además, un adaptador de recursos puede volver a entregar un mensaje a un punto final un número infinito de veces.
  • La redirección de mensajes exige la implementación de destinos especializados (colas y escuchas) para procesar los mensajes fallidos, así como la lógica para detectar anomalías de mensajes. La redirección de mensajes es proclive a generar errores y resulta costosa en términos informáticos debido a su complejidad.

La posibilidad de desactivar (dejar en pausa) y reactivar (reanudar) un punto final de mensaje específico mitiga estos problemas permitiendo que el administrador desactive el punto final desde los mensajes de proceso que están destinados a fallar. Cuando un punto final de mensaje se desactiva, puede reparar el recurso que causa los problemas y reactivar el punto final para reanudar el manejo de solicitudes de mensaje. Durante la resolución de problemas, el adaptador o la aplicación que alberga el punto final no se verá afectada.

Si se está conectando a WebSphere MQ, también puede utilizar la propiedad personalizada WAS_EndpointInitialState en la especificación de activación para realizar el inicio de punto final de mensaje fuera en un estado desactivado. Cuando se establece esta propiedad en Inactivo, el bean controlado por mensaje se conecta al destino, pero no empieza a recibir mensajes. Utilice este valor para desactivar automáticamente un punto final de mensaje si sabe que determinadas tareas deben completarse, deben iniciarse los servicios, o deben realizarse verificaciones, antes de que comience el manejo de mensajes. Puede activar el punto final de mensajes de la misma manera que reactivaría un punto final de mensaje que hubiera colocado en pausa durante su ejecución.

Procedimiento

  1. En la consola administrativa, vaya al panel Puntos finales de mensaje de la aplicación que albergue el punto final de mensaje.
    1. Seleccione Aplicaciones > Tipos de aplicación > Aplicaciones empresariales de WebSphere > nombre_aplicación.
    2. Seleccione el panel Tiempo de ejecución.
    3. Seleccione Puntos finales de mensaje. En el panel se enumeran los puntos finales de mensaje que la aplicación alberga.
  2. Opcional: Inhabilite temporalmente un punto final de mensaje para manejar mensajes y solucionar el problema.
    1. Desactive el punto final de mensaje seleccionando el punto final adecuado y pulse Pausa.
    2. Cuando el punto final de mensaje esté inactivo, diagnostique y repare la causa subyacente de los errores de entrega de mensajes.
    3. Vuelva a activar el punto final de mensaje seleccionando el punto final adecuado y pulse Reanudar.
  3. Opcional: Active un punto final de mensaje que haya comenzado en un estado desactivado. Seleccione el punto final adecuado y pulse Reanudar.

Resultados

El comportamiento que se observará cuando desactive (ponga en pausa) un punto final de mensaje mediante el MBean de punto final de mensaje depende de varios factores, incluido el adaptador de recursos que gestiona el punto final de mensaje, la configuración del punto final de mensaje y la topología del servidor de aplicaciones. Algunos ejemplos de interés específicos son los siguientes:
  • Escucha de MDB en un tema no duradero (en función de la configuración): el comportamiento que implica la desactivación (pausa) de un punto final de mensaje a menudo depende de la función que realiza. Por ejemplo, si ha configurado un bean controlado por mensaje para que esté a la escucha en un tema no duradero del bus de integración de servicios, desactivar el punto final de mensaje es análogo a detener la aplicación y hará que la suscripción se cierre. Esto significa que el bean controlado por mensaje no recibirá los mensajes que se publican mientras el punto final de mensaje esté en pausa.
  • Bean controlado por mensaje en clúster (en función de la topología): en este caso, una aplicación de bean controlado por mensaje se ha desplegado en un clúster de servidores. Un Mbean de punto final de mensaje determinado controla sólo el comportamiento del MDB en un servidor del clúster, por lo que sólo hará que un servidor deje de procesar mensajes. En función de la configuración de mensajería y el adaptador de recursos específico que esté en uso, los mensajes que el punto final de mensaje hubiera consumido podrían ser consumidos por los puntos finales de mensaje activos del clúster o podrían permanecer sin ser consumidos hasta que el punto final de mensaje en pausa se reanude.
  • Bean controlado por mensaje en clúster, cola no en clúster: en este caso, dispone de un clúster de servidores con el mismo bean controlado por mensaje desplegado en ellos. Esto es similar al caso en el que se dispone de distintos beans controlados por mensaje con los mismos criterios de selección de mensajes, excepto que, en este caso, los beans controlados por mensaje son lógicamente el mismo bean controlado por mensaje. Al poner en pausa el punto final, sólo uno de los servidores dejará de recibir mensajes y los otros beans controlados por mensaje recibirán todos los mensajes; ninguno de los mensajes quedará huérfano. Para detener todos los puntos finales, debe dirigir cada servidor del clúster para detener el punto final de mensaje local.
  • Bean controlado por mensaje en clúster, cola en clúster: en este caso, cada bean controlado por mensaje extrae los mensajes de una partición distinta de la cola. La mensajería a través de WebSphere MQ y el Bus de integración de servicios tiene posibilidades similares, aunque distintas. Si va a utilizar WebSphere MQ, al poner en pausa un punto, el resto de instancias del bean controlado por mensajes no podrán recibir los mensajes. En el Bus de integración de servicios, los mensajes de un punto final en pausa se redirigirán a los demás beans controlados por mensaje.

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=tdat_msgendpoint
File name: tdat_msgendpoint.html