Ampliación del ejemplo de Solicitud y respuesta coordinadas de WebSphere MQ

Cuando los valores ReplyToQ y ReplyToQmgr del mensaje de solicitud original se guardan en un mensaje de WebSphere MQ para recuperarlos más adelante, se guarda la totalidad del MQMD del mensaje de solicitud, en lugar de guardar sólo los detalles de ReplyToQ y ReplyToQMgr. Se guarda la totalidad del MQMD porque hay un requisito para almacenar tres valores (ReplyToQ, ReplyToQmgr y CorrelID) y el nodo MQGet puede almacenar o recuperar solamente un valor. Por consiguiente, debe guardar la estructura que contiene los valores necesarios, en lugar de guardar valores individuales. Cuando modifique el ejemplo para guardar distintos valores, debe considerar el comportamiento del nodo MQGet.

Puede utilizar sus propias implementaciones de los subflujos que se utilizan en los flujos de Solicitud y Respuesta para sustituir los proporcionados en el ejemplo. Por ejemplo, puede utilizar una base de datos para almacenar los detalles de ReplyToQ y ReplyToQmgr del mensaje de solicitud inicial. De forma alternativa, puede utilizar los subflujos que se utilizan para almacenar y recuperar ReplyToQ, ReplyToQmgr y CorrelID en un mensaje de WebSphere MQ en otros flujos de mensajes.

Reutilización del subflujo StoreOriginalMQMD_Sub

Puede utilizar el subflujo StoreOriginalMQMD_Sub en sus flujos de mensajes; este subflujo actúa del mismo modo que guardar el MQMD en un mensaje de WebSphere MQ. Para guardar el MQMD del mensaje de solicitud, debe incluir el subflujo en el punto adecuado del flujo de mensajes en el que deba utilizarse. Puede incluir el subflujo sin ninguna modificación, pero debe tener en cuenta lo siguiente:

Aunque es posible que los parámetros clave que puede modificar se hayan identificado en el texto anterior, debe revisar todos los valores de los parámetros de los nodos contenidos en el subflujo para asegurarse de que sean compatibles con los requisitos.

Utilización de una implementación alternativa del subflujo StoreOriginalMQMD_Sub

Puede modificar el subflujo para utilizar un recurso de almacenamiento alternativo para los datos; por ejemplo, si opta por utilizar una base de datos, en lugar de escribir un mensaje de WebSphere MQ, el subflujo debe insertar los datos en una base de datos.

Si se modifica el recurso de almacenamiento, se modifican las características de rendimiento del subflujo. Es importante asegurarse de que las características de la implementación que selecciona sean coherentes con los requisitos de rendimiento del flujo de mensajes. Si se utiliza una base de datos para la información, es más probable que el flujo de mensajes quede limitado E/S porque cada inserción de la base de datos requiere una escritura en el registro del gestor de bases de datos.

El uso de un recurso de almacenamiento alternativo también puede cambiar las propiedades transaccionales del subflujo. Cuando los datos se almacenan utilizando un mensaje de WebSphere MQ, éste utiliza el mismo gestor de recursos que los mensajes de WebSphere MQ que se leen en otro lugar del flujo de mensajes. Si los mensajes de WebSphere MQ se procesan solamente en el flujo de mensajes, sólo participa un gestor de recursos. El uso de una base de datos, o de otro gestor de recursos recuperable, requiere un protocolo de recuperación de confirmación de dos fases entre el gestor de colas de WebSphere Message Broker y el gestor de bases de datos de la base de datos en la que se han almacenado los datos a fin de garantizar la integridad de los datos.

Cuando efectúe cambios, debe revisar todos los valores de los parámetros de los nodos contenidos en el subflujo para asegurarse de que son compatibles con sus requisitos.

Reutilización del subflujo RestoreOriginalMQMD_Sub

Puede utilizar el subflujo RestoreOriginalMQMD_Sub en otros flujos de mensajes para recuperar el MQMD del mensaje de solicitud inicial de un mensaje de WebSphere MQ. Para recuperar el MQMD debe incluir el subflujo en el punto adecuado del flujo de mensajes en el que se ha de utilizar. Puede incluir el subflujo sin ninguna modificación, pero debe tener en cuenta lo siguiente:

Aunque es posible que los parámetros clave que desee modificar se hayan identificado en el texto anterior, debe revisar todos los valores de los parámetros de los nodos contenidos en el subflujo para asegurarse de que sean compatibles con los requisitos.

Utilización de una implementación alternativa del subflujo RestoreOriginalMQMD_Sub

Puede modificar el subflujo para utilizar un recurso de almacenamiento alternativo para los datos; por ejemplo, es posible que desee utilizar una base de datos, en lugar de utilizar el nodo MQGet para leer un mensaje WebSphere MQ del que el subflujo puede leer los datos de una base de datos.

Si se modifica el recurso de almacenamiento, se modifican las características de rendimiento del subflujo. Es importante asegurarse de que las características de la implementación que elija sean coherentes con los requisitos de rendimiento del flujo de mensajes. Dependiendo de la implementación, la utilización de una base de datos para contener la información puede aumentar la actividad general. Si los datos se recuperan utilizando una operación de lectura y no se actualizan o suprimen, la actividad general estará al mínimo para una implementación de base de datos. Sin embargo, si los datos no se suprimen de la base de datos, su tamaño continuará aumentando y progresivamente su uso será más lento a menos que se lleve a cabo alguna operación de mantenimiento. Si el proceso de recuperación implica la actualización de una fila para indicar que los datos se han recuperado o que se ha suprimido una fila, esta acción implica una grabación en las anotaciones del gestor de bases de datos y el resultado será una actividad general de proceso significativamente mayor que cuando se ejecuta una operación de sólo lectura.

La utilización de un recurso alternativo de almacenamiento también puede cambiar las propiedades transaccionales del subflujo. Cuando los datos se almacenan utilizando un mensaje de WebSphere MQ, éste utiliza el mismo gestor de recursos que los mensajes de WebSphere MQ que se leen en otro lugar del flujo de mensajes. Si los mensajes de WebSphere MQ sólo se procesan en el flujo de mensajes, sólo participa un gestor de recursos. El uso de una base de datos o de otro gestor de recursos recuperable requiere el uso de un protocolo de confirmación de dos fases entre el gestor de colas de WebSphere Message Broker y el gestor de bases de datos de la base de datos en la que se almacenan los datos a fin de garantizar la integridad de los datos.

Debe revisar todos los valores de los parámetros de los nodos contenidos en el subflujo para asegurarse de que son compatibles con sus requisitos.

Volver a la página inicial del ejemplo