Restriction des messages de réponse au point de file d'attente en local sur l'application demandeuse

Lorsqu'une destination de file d'attente JMS identifie une file d'attente de bus d'intégration de services comme file d'attente de réponse et que la file d'attente du bus d'intégration de services a plusieurs points de file d'attente, vous pouvez configurer une file d'attente JMS pour limiter les messages au point de file d'attente local pour l'application qui a référencé la file d'attente JMS. Cela permet d'envoyer un message de réponse au point de file d'attente approprié d'un membre du bus du cluster.

Une file d'attente de bus d'intégration de services a plusieurs points de file d'attente si elle appartient à un membre du bus du cluster avec plusieurs moteurs de messagerie (généralement, pour fournir le partage de charge de travail ou l'évolutivité). Le point de file d'attente local correspond au point de file d'attente sur le moteur de messagerie auquel l'application est connectée.

Exemple : la file d'attente JMS Réponse est configurée pour identifier la file d'attente du bus d'intégration de services utilisée comme file d'attente de réponse. La file d'attente JMS est configurée pour limiter les messages au point de file d'attente local (voir les tâches associées pour plus d'informations).

Figure 1. Une application JMS demandeuse se connecte à l'un des moteurs de messagerie dans le membre du bus cluster
Une application JSM demandeuse se connecte à l'un des moteurs de messagerie dans le membre du bus de cluster.

Le membre de bus possède également la file d'attente de bus d'intégration de services utilisée comme file d'attente de réponse. Par conséquent, chaque moteur de messagerie possède un point de file d'attente de la file d'attente de réponse configurée.

L'application demandeuse crée un message JMS et affecte la destination JMSReplyTo à la file d'attente JMS Reply. L'application demandeuse envoie le message de demande à la file d'attente du service en utilisant une autre file d'attente JMS Service. (Service ne nécessite aucune configuration spéciale.) Par défaut, ce message peut être envoyé à n'importe lequel des points de file d'attente qui appartiennent à Service, bien que normalement il doive être envoyé au point de file d'attente locale. Toutefois, pour bien illustrer cet exemple, le système envoie le message à l'autre point de file d'attente.

Lorsque l'application qui a envoyé le message de demande est connectée à un moteur de messagerie qui dispose également d'un point de file d'attente pour la file d'attente de réponse du bus d'intégration de services sous-jacent qui y est configurée et que l'option est activée, l'identité de ce point de file d'attente unique de la file d'attente de réponse est ajoutée aux informations de la file d'attente JMSReplyTo dans le message.

Figure 2. L'application demandeuse envoie le message de demande à la file d'attente du service en utilisant une autre file d'attente JMS
L'application demandeuse envoie le message de demande à la file d'attente du service en utilisant une autre file d'attente JMS.

Le message de demande est envoyé à la file d'attente du service Service et le service le traite. Une fois cette opération terminée, le service envoie un message JMS à la file d'attente de réponse identifiée dans le message de demande (obtenu à l'aide de la méthode JMS Message.getJMSReplyTo). A ce stade, le système de messagerie doit envoyer par défaut le message de réponse à n'importe lequel des points de file d'attente de Reply, mais, comme le demandeur a limité la file de réponse à son point de file d'attente locale, la réponse est envoyée au point de file d'attente unique dans le moteur de messagerie auquel le demandeur était connecté.

Figure 3. Le message est envoyé au point de file d'attente local de l'application demandeuse même lorsque l'application qui répond dispose d'un point de file d'attente local pour la file d'attente de réponse
Le message est envoyé au point de file d'attente local de l'application demandeuse même lorsque l'application qui répond dispose d'un point de file d'attente local pour la file d'attente de réponse.

Le système se comporte comme si la file d'attente de bus d'intégration de services ne possède qu'un seul point de file d'attente. Si le point de file d'attente auquel la réponse est limitée n'est pas disponible, le message n'est pas envoyé à un autre point de file d'attente.

Cette méthode offre les avantages suivants :
  • Les messages de réponse sont toujours renvoyés au point de file d'attente en local sur l'application demandeuse. Cela réduit la route des messages.
  • Les applications demandeuses connectées à des moteurs de messagerie différents du membre de bus peuvent utiliser la même définition de file d'attente JMS. Cela permet l'équilibrage dynamique de la charge de travail dans le cluster.
Cette méthode a les inconvénients suivants :
  • Si l'application demandeuse tente de se déconnecter et de reconnecter avant de recevoir le message de réponse, elle doit connaître le moteur de messagerie auquel elle se connecte et se connecter au même moteur lorsqu'elle se reconnecte. Pour cela, vous devez cibler un moteur de messagerie dans la fabrique de connexions JMS et utiliser cette dernière pour vous reconnecter. Cette configuration exclut l'équilibrage de la charge de travail.
  • L'application demandeuse doit être connectée à un moteur de messagerie dans le membre de bus qui possède la file d'attente de réponse de bus d'intégration de services. Si ce n'est pas le cas, il n'existe pas de point de file d'attente local auquel les messages de réponse peuvent être restreints et le système suit le comportement de routage des messages par défaut.

Amélioration

La configuration suivante est requise pour équilibrer la charge de travail de plusieurs applications demandeuses entre tous les moteurs de messagerie du membre de bus, tout en permettant aux applications de se déconnecter et se reconnecter :
  • Fabriques de connexions ciblant chacune un moteur de messagerie différent.
  • Applications demandeuses à répartir entre les fabriques de connexions.

Icône indiquant le type de rubrique Rubrique de concept



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cjt0023_
Nom du fichier : cjt0023_.html