Canales
IBM® MQ puede utilizar tres tipos distintos de canales: un canal de mensajes, un canal MQI y un canal AMQP
No confunda estos tipos diferentes de canales:
- Canal de mensajes
- Un canal de mensajes es un enlace de comunicación unidireccional entre dos gestores de colas. IBM MQ utiliza los canales de mensajes para transferir mensajes entre los gestores de colas. Para enviar mensajes en ambas direcciones, debe definir un canal para cada dirección.
- canal MQI
- Un canal MQI es bidireccional y conecta una aplicación (cliente MQI) con un gestor de colas en una máquina servidor. IBM MQ utiliza los canales MQI para transferir llamadas y respuestas MQI entre clientes MQI y gestores de colas.
Canal AMQP
- Un canal AMQP, que es bidireccional y conecta un cliente AMQP con un gestor de colas en una máquina servidor. IBM MQ utiliza los canales AMQP para transferir llamadas y respuestas AMQP entre aplicaciones AMQP y gestores de colas.
Cuando se hace referencia a canales de mensajes, la palabra canal se utiliza a menudo como sinónimo de definición de canal. Normalmente, el contexto permite discernir si se habla de un canal completo, con dos extremos, o de una definición de canal, con un único extremo.
Canales de mensajes
El canal de mensajes puede ser de los siguientes tipos:
Tipo de definición de canal de mensajes | Descripción |
---|---|
Emisor | Un canal emisor es un canal de mensajes que utiliza el gestor de colas para enviar mensajes a otros gestores de colas. Para enviar mensajes utilizando un canal emisor, debe crear también un canal receptor en el otro gestor de colas con el mismo nombre que el canal emisor. También puede utilizar canales emisores con canales peticionarios si implementa un mecanismo de "devolución de llamada". |
Servidor | Un canal servidor es un canal de mensajes que utiliza el gestor de colas para enviar mensajes a otros gestores de colas. Para enviar mensajes utilizando un canal emisor, debe crear también un canal receptor en el otro gestor de colas con el mismo nombre que el canal servidor. También puede utilizar los canales servidores con canales peticionarios. En ese caso, la definición de canal peticionario en el otro extremo del canal solicita que se inicie la definición de canal servidor. El servidor envía mensajes al peticionario. El servidor también puede iniciar la comunicación, siempre y cuando sepa el nombre de conexión del canal asociado. |
Receptor | Un canal receptor es un canal de mensajes que utiliza el gestor de colas para recibir mensajes de otros gestores de colas. Para recibir mensajes utilizando un canal receptor, debe crear también un canal emisor o un canal servidor en el otro gestor de colas con el mismo nombre que el canal receptor. |
Peticionario | Un canal peticionario es un canal de mensajes que utiliza el gestor de colas para recibir mensajes de otros gestores de colas. Un canal peticionario puede solicitar que se inicie el canal de socio definido en el extremo remoto. Si el canal de socio es un canal de servidor, el canal de servidor acepta la solicitud de inicio y empieza a enviar mensajes, desde la cola de transmisión identificada en la definición del canal de servidor, al canal de solicitante. Si el canal de socio es un canal emisor, el canal emisor acepta la solicitud de inicio pero, a continuación, cierra la conexión con el solicitante. A continuación, el canal emisor se inicia, negocia una sesión con el canal solicitante de socio y comienza a enviar mensajes desde la cola de transmisión identificada en la definición del canal emisor. Este último caso proporciona esencialmente un mecanismo de devolución de llamada en el que el canal solicitante solicita al canal emisor que devuelva la llamada. |
Clúster emisor | La definición de canal de clúster emisor (CLUSSDR) define el extremo emisor de un canal en el que un gestor de colas de clúster puede enviar información de clúster a uno de los depósitos completos. El canal de clúster emisor se utiliza para notificar el depósito de cualquier cambio que se realice en el estado del gestor de colas, por ejemplo la adición o supresión de una cola. Se utiliza también para transmitir mensajes. Los gestores de colas de depósito completo propiamente tienen canales de clúster emisor que se apuntan uno al otro. Se utilizan para comunicarse entre sí los cambios de estado del clúster. No tiene mucha importancia saber qué depósito completo apunta la definición de canal CLUSSDR del gestor de colas. Tras el contacto inicial, se definirán automáticamente más objetos de gestor de colas de clúster, según sea necesario, para que el gestor de colas pueda enviar la información de clúster a cada depósito completo, y los mensajes a cada gestor de colas. Si desea ver más información, consulte el apartado Clústeres de gestores de colas. |
Clúster receptor | La definición de canal de clúster receptor (CLUSRCVR) define el extremo receptor de un canal en el que un gestor de colas de clúster puede recibir mensajes de otros gestores de colas del clúster. Un canal de clúster receptor también puede transportar información sobre el clúster destinada para el repositorio. Al definir el canal de clúster receptor, el gestor de colas indica a los otros gestores de colas de clúster que se encuentra disponible para recibir mensajes. Necesita como mínimo un canal de clúster receptor para gestor de colas de clúster. Si desea ver más información, consulte el apartado Clústeres de gestores de colas. |
Debe definir los dos extremos de todos los canales para tener una definición de canal para cada extremo del canal. Los dos extremos del canal deben ser compatibles.
Puede tener las siguientes combinaciones de definiciones de canal:
- Emisor-Receptor
- Servidor-Receptor
- Peticionario-Servidor
- Peticionario-Servidor (devolución de llamada)
- Emisor del clúster-Receptor del clúster
Agentes de canal de mensajes
Todas las definiciones de canal que cree pertenecen a un gestor de colas determinado. Un gestor de colas puede tener varios canales del mismo o de diferentes tipos. En cada extremo del canal hay un programa, el agente de canal de mensajes (MCA). En cada extremo del canal, el MCA de llamada coge los mensajes de la cola de transmisión y los envía a través del canal. En el otro extremo del canal, el MCA de respuesta recibe los mensajes y los entrega al gestor de colas remoto.
Un MCA de llamada puede estar asociado con un canal emisor, servidor o peticionario. Un MCA de respuesta puede estar asociado con cualquier tipo de canal de mensajes.
IBM MQ admite las siguientes combinaciones de tipos de canal en los dos extremos de una conexión:
De llamada | Dirección del flujo de mensajes | De respuesta | ||
---|---|---|---|---|
Tipo de canal | ¿Es necesario un escucha? | ¿Es necesario un escucha? | Tipo de canal | |
Emisor | No | De canal de llamada a canal de respuesta | Sí | Receptor |
Servidor | No | De canal de llamada a canal de respuesta | Sí | Receptor |
Servidor | No | De canal de llamada a canal de respuesta | Sí | Peticionario |
Peticionario | No | De canal de respuesta a canal de llamada | Sí | Servidor |
Peticionario | Sí | De canal de respuesta a canal de llamada | Sí | Emisor |
Canales MQI
Los canales MQI pueden ser de los siguientes tipos:
Tipo de canal MQI | Descripción |
---|---|
Conexión de servidor | Un canal de conexión con el servidor es un canal MQI bidireccional que se utiliza para conectar un cliente de IBM MQ con un servidor de IBM MQ. El canal de conexión con el servidor es el extremo del servidor del canal. |
Conexión de cliente | Un canal de conexión con el cliente es un canal MQI bidireccional que se utiliza para conectar un cliente de IBM MQ con un servidor de IBM MQ. IBM MQ Explorertambién utiliza conexiones de cliente para conectarse a gestores de colas remotos. El canal de conexión de cliente es el extremo del cliente del canal. Cuando cree el canal de conexión con el cliente, se creará un archivo en el sistema que alojará el gestor de colas. A continuación, debe copiar el archivo de conexión de cliente en el sistema cliente de IBM MQ. |
![[UNIX, Linux, Windows, IBM i]](./ngmulti.gif)
Canales AMQP
Sólo hay un tipo de canal AMQP.
Utilice el canal para conectar una aplicación de mensajería AMQP con un gestor de colas, lo cual permite que la aplicación intercambie mensajes con aplicaciones IBM MQ. Un canal AMQP le permite desarrollar una aplicación utilizando MQ Light y desplegarlo después como una aplicación de empresa, beneficiándose de los recursos a nivel de empresa que proporciona IBM MQ.
Puede obtener información adicional sobe canales consultando Canales en IBM Knowledge Center.