Topologías de red para la interoperatividad utilizando una conexión de servidor de IBM MQ y colas compartidas de IBM MQ para z/OS
Estos ejemplos muestran topologías sencillas y complejas que permiten a WebSphere Application Server interoperar con IBM MQ utilizando una conexión de servidor de IBM MQ, y una topología para utilizar las conexiones de servidor de IBM MQ con colas compartidas de IBM MQ para z/OS para crear un sistema de mensajería con alta disponibilidad.
- Un único servidor de aplicaciones WebSphere Application Server conectado a un único gestor de colas o grupo de compartimiento de colas de IBM MQ
- Varias aplicaciones que se ejecutan en servidores de aplicaciones independientes conectados a un gestor de colas de IBM MQ
- Utilización de colas compartidas de IBM MQ for z/OS con una conexión de servidor de IBM MQ
Para que estén completas, las topologías que el tema describe incluyen topologías en clúster y altamente disponibles. Tenga en cuenta que, para los clústeres y la alta disponibilidad, debe utilizar la versión de despliegue de red o z/OS del producto.
Destinos de tipo de cola con conexiones de servidor de IBM MQ
Con un destino de tipo de cola regular en el bus de integración de servicios, la propia cola está en un miembro de bus dentro de WebSphere Application Server. El miembro de bus puede ser un servidor de aplicaciones o, posiblemente, un clúster de servidores de aplicaciones. Uno o más motores de mensajería del miembro de bus gestionan la cola. Los motores de mensajería pueden colocar mensajes en la cola, obtener mensajes de la cola y, si es necesario, mantener copias de disco de los mensajes. Cuando una aplicación se conecta al bus de integración de servicios, podría conectarse a un motor de mensajería que no está donde se encuentra la cola. En dicho caso, el motor de mensajería donde la aplicación se conecta con y utiliza el motor de mensajería donde se encuentra la cola.
Con una conexión de servidor de IBM MQ puede configurar un destino de tipo de cola de bus de integración de servicios, para que la propia cola esté en un gestor de colas o un grupo de compartimiento de colas de IBM MQ. En este caso, el gestor de colas o el grupo de compartimiento de colas se incluye en el bus de integración de servicios como un miembro de bus. Los motores de mensajería de integración de servicios en el bus se comunican con y utilizan un gestor de colas de IBM MQ para acceder a la cola.
Una conexión de servidor de IBM MQ permite a las aplicaciones realizar ambas operaciones, get (obtener) y put (colocar), a diferencia de una conexión de enlace de IBM MQ que sólo permite a las aplicaciones realizar operaciones put.
Una conexión de servidor de IBM MQ puede utilizar una conexión de "enlaces" (conexión de llamada, call attach) o una conexión de "cliente" (una conexión TCP/IP). Una conexión de "enlaces" sólo se puede utilizar cuando el servidor de aplicaciones y el gestor de colas o el grupo de compartimiento de colas se ejecutan en el mismo host o en la misma partición lógica (LPAR). Si el servidor de aplicaciones y el gestor de colas o el grupo de compartimiento de colas se ejecutan en distintos hosts, se debe utilizar una conexión de "cliente".
Un único servidor de aplicaciones WebSphere Application Server conectado a un único gestor de colas o grupo de compartimiento de colas de IBM MQ
Este escenario básico utiliza un bus de integración de servicios con un solo motor de mensajería. El bus incluye un destino de tipo de cola configurado para utilizar una cola compartida de IBM MQ. Una sola aplicación se conecta al bus de integración de servicios y accede al destino de tipo de cola.
Cuando la aplicación envía un mensaje al destino, el motor de mensajería se comunica con el gestor de colas de IBM MQ y lo utiliza para añadir el mensaje a la cola compartida. Cuando la aplicación recibe un mensaje del destino, el motor de mensajería se comunica con el gestor de colas de IBM MQ y lo utiliza para obtener el mensaje de la cola compartida.
Cuando una aplicación se comunica con IBM MQ en una conexión de servidor de IBM MQ, sólo es consciente de que se está comunicando con un motor de mensajería de integración de servicios local. El motor de mensajería se comunica con IBM MQ en nombre de la aplicación. El gestor de colas de IBM MQ considera el motor de mensajería de integración de servicios como un cliente de IBM MQ.
En la siguiente figura, la línea de conexión etiquetada con A muestra el gestor de colas que aparece en el motor de mensajería de integración de servicios como un miembro de su bus local. La línea de conexión etiquetada como B muestra el motor de mensajería de integración de servicios que aparece en el gestor de colas como otro gestor de colas.

Varias aplicaciones que se ejecutan en servidores de aplicaciones independientes conectados a un gestor de colas de IBM MQ
Con una conexión de servidor IBM MQ, los motores de mensajería de integración de servicios realizan de forma dinámica conexiones individuales a gestores de colas de IBM MQ, como y cuando sean necesarios. No hay motores de mensajería de pasarela ni gestores de colas de pasarela, ya que se utiliza un enlace de IBM MQ.
La siguiente figura muestra dos aplicaciones que se ejecutan en servidores de aplicaciones independientes que se conectan a un gestor de colas de WebSphere MQ en una conexión de servidor de WebSphere MQ. El bus de integración de servicios incluye dos motores de mensajería y un gestor de colas.

Utilización de colas compartidas de IBM MQ for z/OS con una conexión de servidor de IBM MQ
Las conexiones de servidor de IBM MQ permiten a las aplicaciones WebSphere Application Server realizar operaciones get (obtener) (para recibir mensajes de colas IBM MQ). Por lo tanto, puede obtener ventajas utilizando un servidor IBM MQ para conectarse a un grupo de compartimiento de colas de IBM MQ for z/OS. Un enlace de IBM MQ puede conectar aplicaciones WebSphere Application Server a un grupo de compartimiento de colas, pero las aplicaciones no puede obtener las ventajas completas de colas compartidas porque no pueden consumir mensajes de ellas, ya que un enlace de IBM MQ sólo permite a las aplicaciones realizar operaciones put (colocar).
- Las diferentes aplicaciones (o diferentes instancias de la misma aplicación) compiten para procesar mensajes en la misma cola. Una instancia que puede procesar mensajes más rápidamente, quizás porque la instancia se ejecuta en un procesador más potente o menos cargado, procesa automáticamente una proporción superior de los mensajes en la cola, lo que ofrece un mejor uso de los recursos disponibles y unos mejores tiempo de respuesta en general. Esto se denomina "equilibrio de carga de trabajo de extracción".
- Si un gestor de colas de un grupo de compartimiento de colas falla, las aplicaciones pueden conectarse a otro gestor de colas y continuar utilizando la misma cola compartida. Esto proporciona una mayor disponibilidad para las aplicaciones. Una característica especial de los grupos de compartimiento de colas, denominada "recuperación de nivel de igual", maneja los casos en los que una aplicación recibe un mensaje de una cola compartida pero el gestor de colas falla antes de que finalice el proceso del mensaje. Siempre que la aplicación sea transaccional, otro gestor de colas del mismo grupo de compartimiento de colas puede devolver el mensaje a la cola compartida para que se pueda procesar sin esperar a que el gestor de colas se recupere. La recuperación de nivel de igual mejora la disponibilidad de las aplicaciones.
- Los grupos de compartimiento de colas también permiten a la integración de servicios conectarse al grupo de compartimiento de colas utilizando una sola dirección de red para la recopilación de gestores de colas en el grupo de compartimiento de colas. La conexión se redirige automáticamente a un gestor de colas adecuado en el grupo de compartimiento de cola, basándose en qué gestor de colas está disponible, y cuál es capaz de proporcionar el mejor tiempo de respuesta. Esta característica mejora la disponibilidad y el rendimiento de la aplicación.
Puede proporcionar estas ventajas a las aplicaciones de integración de servicios definiendo destinos de integración de servicios en colas compartidas propiedad de un servidor IBM MQ que está en un grupo de compartimiento de colas. La siguiente figura muestra un motor de mensajería de integración de servicios que se conecta a un gestor de colas (QM1) en un grupo de compartimiento de colas. La conexión permite a una aplicación de integración de servicios consumir mensajes de una cola compartida. Otras aplicaciones de integración de servicios en el mismo servidor de aplicaciones o en uno diferente pueden utilizar conexiones distintas (a los mismos gestores de colas o distintos, QM2 o QM3, en el mismo grupo de compartimiento de colas) para consumir mensajes de la misma cola compartida.

La siguiente figura muestra que cuando un gestor de colas (QM1) del grupo de compartimiento de colas no está disponible de forma temporal, la integración de servicios se puede conectar a un gestor de colas diferentes (QM2), lo que permite a las aplicaciones seguir procesando mensajes de la cola.
