Compatibilidad e interoperatividad de aplicaciones con versiones anteriores de IBM MQ

No es posible conectar una aplicación creada con bibliotecas incluidas en una versión posterior de IBM® MQ a una versión anterior de IBM MQ. Evite crear aplicaciones en una versión posterior y redesplegarlas en un gestor de colas que se ejecute en una versión anterior, aunque las aplicaciones funcionen en la práctica.

Las aplicaciones de IBM MQ interactúan con las aplicaciones que se ejecutan en versiones anteriores de IBM MQ, siempre que no utilicen ninguna función nueva. Los clientes de IBM MQ pueden conectarse a gestores de colas que se ejecutan en una versión anterior a la del cliente, siempre que el cliente no utilice funciones nuevas.

Una aplicación IBM MQ que utiliza sólo funciones proporcionadas por una versión anterior de un gestor de colas puede continuar enviando mensajes a la versión anterior. No importa a qué versión de IBM MQ se basa una aplicación y a qué está conectada. Puede intercambiar mensajes con una aplicación conectada a una versión anterior de IBM MQ, siempre que no utilice una nueva función.

Considere estos cuatro casos; los dos primeros casos no están soportados aunque pueden funcionar en la práctica, los dos últimos casos están soportados. Los dos primeros casos requieren compatibilidad con una versión anterior de IBM MQ. Los dos últimos casos se basan en la interoperatividad entre todas las versiones de IBM MQ

  1. Ejecución de una aplicación de servidor IBM MQ , creada con una versión posterior de IBM MQ, que se conecta a un gestor de colas que se ejecuta en un servidor con una versión anterior de IBM MQ instalada.
  2. Ejecución de una aplicación cliente IBM MQ , creada con una versión posterior de IBM MQ, en una plataforma cliente con una instalación de cliente anterior, conectándose a un gestor de colas que se ejecuta en un servidor con una versión posterior de IBM MQ instalada.
  3. Ejecución de una aplicación cliente IBM MQ , creada con una versión posterior de IBM MQ, en una plataforma cliente con la instalación de cliente posterior, conectándose a un gestor de colas que se ejecuta en un servidor con una versión anterior de IBM MQ instalada.
  4. Intercambio de mensajes entre un cliente o una aplicación de servidor de IBM MQ , conectados a un gestor de colas que se ejecuta en un servidor con una versión posterior de IBM MQ instalada, con aplicaciones conectadas a un gestor de colas que se ejecuta en un servidor con una versión anterior de IBM MQ instalada.

Piense en evitar los dos primeros casos, puesto que no garantizan que funcionarán todo el tiempo. Si está ejecutando una configuración incompatible y encuentra un problema, debe volver a crear las aplicaciones con el nivel correcto de IBM MQ. A continuación, puede continuar con el diagnóstico de problemas.

Varias instalaciones y carga de aplicaciones

La capacidad de carga de las bibliotecas de IBM MQ no relaja la restricción de que una aplicación compilada y enlazada en un nivel de release posterior no debe cargar directamente una biblioteca de IBM MQ en un nivel de release anterior. En la práctica, siempre que el sistema operativo cargue una biblioteca en el mismo nivel o en un nivel posterior al de la biblioteca con la que se ha compilado y enlazado la aplicación, IBM MQ puede llamar a cualquier otro nivel de IBM MQ en el mismo servidor.

Por ejemplo, supongamos que vuelve a compilar y enlazar una aplicación que se va a conectar a un gestor de colas de IBM MQ 9.1 utilizando las bibliotecas que se suministran con IBM MQ 9.4. En tiempo de ejecución, el sistema operativo debe cargar las bibliotecas IBM MQ 9.4 para la aplicación, aunque la aplicación se conecte a un gestor de colas de IBM MQ 9.1 . IBM MQ 9.4 detecta la incoherencia y carga la biblioteca IBM MQ 9.1 para la aplicación. Este extremo también resulta aplicable a cualquier futuro release. Si la aplicación se recompila y enlaza con un release posterior, la aplicación debe cargar una biblioteca IBM MQ que coincida con el release posterior, incluso si continúa conectándose a un gestor de colas de IBM MQ 9.4 .

Ejemplos

  1. Decide reconstruir una aplicación cliente. ¿Puede desplegarla en su entorno de producción que contiene algunas versiones anteriores de plataformas de cliente y de servidor?

    La respuesta es no; debe actualizar todas las estaciones de trabajo cliente en las que va a realizar el despliegue, como mínimo a la versión del cliente que ha creado. No es necesario actualizar los gestores de colas que se ejecutan en versiones anteriores de IBM MQ . En la práctica, es probable que todos los clientes funcionen, pero para mantener el mantenimiento debe evitar ejecutar niveles incompatibles de una aplicación y el cliente de IBM MQ .

  2. Puede desplegar algunos gestores de colas de IBM MQ en un nuevo nivel de versión. Tiene una aplicación IBM MQ existente que utiliza para enviar mensajes entre los servidores. ¿Debe recrear la aplicación para desplegarse en los nuevos servidores? ¿Puede desplegar la versión anterior en los nuevos servidores?

    Ambas opciones son correctas. Puede seguir desplegando la versión existente de la aplicación en todos sus servidores, o puede desplegar la aplicación creada de nuevo en los servidores nuevos. Las dos configuraciones funcionan. IBM MQ da soporte a la ejecución de la aplicación existente en servidores posteriores y al envío de mensajes de versiones posteriores de la aplicación a versiones anteriores. Lo que no debe hacer es recrear la aplicación en la versión más reciente y redesplegarse en los servidores anteriores y más recientes. IBM MQ no da soporte a la compatibilidad con versiones anteriores.

[z/OS]

z/OS® stubs de aplicaciones

Los módulos de apéndice que aparecen listados se editan mediante enlace con aplicaciones y salidas.

  • CSQASTUB
  • CSQBRSSI
  • CSQBRSTB
  • CSQBSTUB
  • CSQCSTUB
  • CSQQSTUB
  • CSQXSTUB