...
Ces messages sont véhiculés dans des canaux dédiés.
Schéma EIP
Version statique
Version dynamique
Bonnes pratiques
La mise en oeuvre de canaux permet de couper la consommation de ces messages sans perturber les systèmes mis en jeu. C'est pour une raison de flexibilité dans l'exploitation qu'il
...
est obligatoire
...
d'avoir 1 file de messages Reply par système (Consumer)
...
.
Schéma EIP
Vision sans ESB
Ce pattern met en oeuvre 3 EIP:
- Request-Reply: pour les appels asynchrones avec une réponse associée
- reply channel: pour router dynamiquement la réponse vers la bonne file.
- correlation identifier: pour identifier de manière unique chaque message.
Vision avec ESB
Il convient de prendre en compte que l'ESB route ces messages et vistualise les consommateurs et producteurs. Il est donc l'élément central et obligatoire.
Le pattern Smart Proxy offre le moyen de garder ces files de réponses par consommateur tout en gardant un contrôle sur les messages.
L'adresse de retour fournit au Provider est remplacée par celle du bus. La réelle vers le Consumer concernée est stockée dans l'attente de la réponse.
Les messages retour sont interceptés et transformés conformément aux rôles de l'ESB.
Identifiant de corrélation
Un identifiant de corrélation a 2 objectifs:
- permettre aux consommateur d'associer un ou plusieurs messages à un contexte d'exécution.
- permettre un suivi des messages dans plusieurs files ou plusieurs protocoles.
Celui-ci doit être positionné par l'émetteur du message (Consumer 1 et 2). Les ID mis en jeu sont alors du périmètre de l'émetteur.
Il est préférable d'utiliser générateur de Message ID pour chaque Consumer.
L'ESB positionne lui aussi un ID technique de flux.
Il y a donc 2 ID de corrélations:
- Applicatif: produit par l'émetteur
- ESB: produit par le Bus.