Canaux
IBM® MQ peut utiliser trois types différents de canal : un canal de transmission de messages, un canal MQI et un canal AMQP.
Ne les confondez pas :
- Canal de transmission de messages
- Un canal de transmission de messages est une liaison de communication unidirectionnelle entre deux gestionnaires de files d'attente. IBM MQ utilise des canaux de transmission de messages pour transférer les messages entre les gestionnaires de files d'attente. Pour envoyer des messages dans les deux directions, vous devez définir un canal pour chaque direction.
- Canal MQI
- Un canal MQI est bidirectionnel et connecte une application (client MQI) à un gestionnaire de files d'attente sur un serveur. IBM MQ utilise les canaux MQI pour transférer les appels et réponses MQI entre les clients MQI et les gestionnaires de files d'attente.
Canal AMQP
- Un canal AMQP bidirectionnel qui permet de connecter un client AMQP à un gestionnaire de files d'attente sur un serveur. IBM MQ utilise les canaux AMQP pour transférer les appels et réponses AMQP entre les applications AMQP et les gestionnaires de files d'attente.
Pour désigner les canaux de transmission de messages, le terme canal est souvent utilisé comme synonyme de définition de canal. Le contexte permet généralement de savoir si l'on parle d'un canal complet, avec deux extrémités, ou d'une définition de canal avec une seule extrémité.
Canaux de transmission de messages
Les définitions de canaux de transmission de messages peuvent être de différents types :
Type de définition de canaux de transmission de messages | Description |
---|---|
Emetteur | Un canal émetteur est un canal de transmission de messages utilisé par le gestionnaire de files d'attente pour envoyer des messages vers d'autres gestionnaires de files d'attente. Pour envoyer des messages via un canal émetteur, vous devez aussi créer, sur l'autre gestionnaire de files d'attente, un canal récepteur portant le même nom que le canal émetteur. Vous pouvez également utiliser des canaux émetteurs avec des canaux demandeurs si vous mettez en oeuvre un mécanisme de "rappel". |
Serveur | Un canal serveur est un canal de transmission de messages utilisé par le gestionnaire de files d'attente pour envoyer des messages vers d'autres gestionnaires de files d'attente. Pour envoyer des messages via un canal serveur, vous devez aussi créer, sur l'autre gestionnaire de files d'attente, un canal récepteur portant le même nom que le canal serveur. Vous pouvez également utiliser des canaux serveurs avec des canaux demandeurs. Dans ce cas, la définition du canal demandeur à l'autre extrémité du canal demande à la définition du canal serveur de démarrer. Le serveur envoie des messages au demandeur. Le serveur peut également initialiser la communication s'il connaît le nom de connexion du canal partenaire. |
Récepteur | Un canal récepteur est un canal de transmission de messages utilisé par le gestionnaire de files d'attente pour recevoir des messages d'autres gestionnaires de files d'attente. Pour recevoir des messages via un canal récepteur, vous devez aussi créer, sur l'autre gestionnaire de files d'attente, un canal émetteur ou serveur portant le même nom que le canal récepteur. |
Demandeur | Un canal demandeur est un canal de transmission de messages utilisé par le gestionnaire de files d'attente pour recevoir des messages d'autres gestionnaires de files d'attente. Un canal demandeur peut demander le canal partenaire défini sur l'extrémité distante pour démarrer. Si le canal partenaire est un canal serveur, le canal serveur accepte la demande de démarrage et commencer à envoyer des messages depuis la file d'attente de transmission identifiée dans la définition de canal serveur au canal demandeur. Si le canal partenaire est un canal émetteur, le canal émetteur accepte la demande de démarrage, puis ferme la connexion au demandeur. Le canal émetteur démarre, négocie une session avec le canal demandeur partenaire, puis commence à envoyer des messages depuis la file d'attente de transmission identifiée dans la définition du canal émetteur. Ce dernier cas fournit essentiellement un mécanisme de rappel car le canal demandeur demande au canal émetteur de rappeler. |
Emetteur de cluster | Une définition de canal émetteur de cluster (CLUSSDR) définit l'extrémité émettrice d'un canal, sur laquelle un gestionnaire de files d'attente du cluster peut envoyer des informations relatives au cluster à l'un des référentiels complets. Le canal émetteur de cluster permet d'informer le référentiel en cas de modification du statut du gestionnaire de files d'attente, par exemple en cas d'ajout ou de suppression d'une file d'attente. Il permet également de transmettre des messages. Les gestionnaires de files d'attente de référentiel complet eux-mêmes disposent de canaux émetteurs de cluster qui pointent l'un vers l'autre. Ils leur permettent de se communiquer mutuellement les modifications du statut du cluster. Il n'est pas très important de savoir vers quel référentiel complet pointe une définition de canal CLUSSDR du gestionnaire de files d'attente. Une fois le premier contact établi, un plus grand nombre d'objets gestionnaire de files d'attente du cluster est défini automatiquement selon les besoins, de sorte que le gestionnaire de files d'attente puisse envoyer des informations relatives au cluster à tous les référentiels complets, et des messages à tous les gestionnaires de files d'attente. Pour plus d'informations, reportez-vous à la rubrique Clusters de gestionnaires de files d'attente. |
Récepteur de cluster | Une définition de canal récepteur de cluster (CLUSRCVR) définit l'extrémité réceptrice d'un canal, sur laquelle un gestionnaire de files d'attente du cluster peut recevoir des messages d'autres gestionnaires de files d'attente du cluster. Un canal récepteur de cluster peut également transmettre des informations relatives au cluster destinées au référentiel. En définissant le canal récepteur de cluster, le gestionnaire de files d'attente indique aux autres gestionnaires qu'il est disponible pour recevoir des messages. Vous devez disposer d'au moins un canal récepteur de cluster pour chaque gestionnaire de files d'attente du cluster. Pour plus d'informations, reportez-vous à la rubrique Clusters de gestionnaires de files d'attente. |
Pour chaque canal, vous devez définir les deux extrémités afin de disposer d'une définition de canal pour chaque extrémité. Les deux extrémités du canal doivent avoir des types compatibles.
Vous pouvez combiner les définitions de canal de la façon suivante :
- Emetteur-Récepteur
- Serveur-Récepteur
- Demandeur-Serveur
- Demandeur-Emetteur (rappel)
- Emetteur de cluster-Récepteur de cluster
Agents MCA
Chaque définition de canal créée appartient à un gestionnaire de files d'attente spécifique. Un gestionnaire peut comporter plusieurs canaux d'un type identique ou différent. A chaque extrémité du canal se trouve un programme, l'agent MCA. A l'une des extrémités du canal, l'agent MCA demandeur extrait les messages de la file de transmission et les envoie sur le canal. A l'autre extrémité du canal, l'agent MCA répondeur reçoit les messages et les délivre au gestionnaire de files d'attente éloignées.
Un agent MCA demandeur peut être associé à un canal émetteur, serveur ou demandeur. Un agent MCA répondeur peut être associé à n'importe quel type de canal de transmission de messages.
IBM MQ prend en charge les combinaisons suivantes de types de canaux aux deux extrémités d'une connexion :
Canal appelant | Direction du flux de messages | Canal répondeur | ||
---|---|---|---|---|
Type de canal | Programme d'écoute requis ? | Programme d'écoute requis ? | Type de canal | |
Emetteur | Non | Appelant à répondeur | Oui | Récepteur |
Serveur | Non | Appelant à répondeur | Oui | Récepteur |
Serveur | Non | Appelant à répondeur | Oui | Demandeur |
Demandeur | Non | Répondeur à appelant | Oui | Serveur |
Demandeur | Oui | Répondeur à appelant | Oui | Emetteur |
Canaux MQI
Les canaux MQI peuvent être de l'un des types suivants :
Type de canal MQI | Description |
---|---|
Connexion serveur | Un canal de connexion serveur est un canal MQI bidirectionnel qui est utilisé pour connecter un client IBM MQ à un serveur IBM MQ. Le canal de connexion serveur constitue l'extrémité serveur du canal. |
Connexion client | Un canal de connexion client est un canal MQI bidirectionnel qui est utilisé pour connecter un client IBM MQ à un serveur IBM MQ. IBM MQ Explorer utilise également des connexions client pour se connecter aux gestionnaires de files d'attente éloignées. Le canal de connexion client constitue l'extrémité client du canal. Lorsque vous créez un canal de connexion client, un fichier est créé sur l'ordinateur hébergeant le gestionnaire de files d'attente. Vous devez ensuite copier ce fichier de connexion client sur l'ordinateur client IBM MQ. |
![[UNIX, Linux, Windows, IBM i]](./ngmulti.gif)
Canaux AMQP
Il n'existe qu'un type de canal AMQP.
Vous utilisez ce canal pour connecter une application de messagerie AMQP à un gestionnaire de files d'attente, pour permettre à l'application d'échanger des messages avec les applications IBM MQ. Un canal AMQP permet de développer une application à l'aide de MQ Light, puis de la déployer comme application d'entreprise pour profiter des utilitaires de niveau entreprise fournis par IBM MQ.
Pour plus d'informations sur les canaux, voir Canaux dans l'IBM Knowledge Center.