0% ont trouvé ce document utile (0 vote)
2 vues23 pages

Modèles de Routage de Messages EIP

Le document présente les Enterprise Integration Patterns (EIP), qui comprennent 65 modèles d'intégration pour concevoir des solutions robustes. Il détaille des modèles de routage de messages, tels que le routage basé sur le contenu et les filtres de messages, ainsi que des transformateurs de messages, comme le Content Enricher et le Normalizer. Ces modèles facilitent l'intégration entre systèmes en normalisant et en transformant les messages échangés.

Transféré par

Saif Velly
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
2 vues23 pages

Modèles de Routage de Messages EIP

Le document présente les Enterprise Integration Patterns (EIP), qui comprennent 65 modèles d'intégration pour concevoir des solutions robustes. Il détaille des modèles de routage de messages, tels que le routage basé sur le contenu et les filtres de messages, ainsi que des transformateurs de messages, comme le Content Enricher et le Normalizer. Ces modèles facilitent l'intégration entre systèmes en normalisant et en transformant les messages échangés.

Transféré par

Saif Velly
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Enterprise Integration Patterns

P ROF. G UE RMAH H AT I M
EMAIL: [Link]@[Link]

Année Universitaire: 2025-2026


EIP : Description des Patterns
 Comporte 65 modèles d'intégration fournissant des conseils de conception
indépendants de la technologie pour décrire et développer des solutions
d'intégration robustes.

2
EIP : Routing Patterns
 Message Routing est une catégorie de Filter qui permet de découpler une source
de messages de la destination finale ces derniers. Les modèles de routage des
messages sont classés dans les groupes suivants:
 Simple Routers: permettent d’acheminer les messages d'un canal entrant vers
un ou plusieurs canaux sortants.
 Composed Routers: combinent plusieurs routeurs simples pour créer des flux
de messages plus complexes.
 Architectural Patterns: décrivent les styles architecturaux basés sur les routeurs
de messages .

3
EIP : Routing Patterns
 Les EIP décrivent les Message Routing simples suivants :
 Content-Based Routing: permet de router chaque message vers le bon
destinataire en fonction du contenu du message.
 Il examine le contenu du message et achemine le message sur un canal
différent en fonction des données contenues dans le message. Le routage peut
être basé sur un certain nombre de critères tels que l'existence de champs, des
valeurs de champ spécifiques, etc.

4
EIP : Routing Patterns
 Les EIP décrivent les Message Routing simples suivants :
 Message Filter : permet de filtrer les messages en fonction de règles
prédéfinies.
 Message Filter n'a qu'un seul canal de sortie: Si le contenu du message
correspond aux critères spécifiés par le filtre de messages, le message est
acheminé vers le canal de sortie, sinon le message est rejeté.

5
EIP : Routing Patterns
 Les EIP décrivent les Message Routing simples suivants :
 Dynamic Router : permet de router les messages en fonction de critères
fournis par un composant tierce pouvant être renseigné dynamiquement.
 Lors du démarrage du système, chaque destinataire potentiel envoie un message spécial au
Dynamic Router sur ce canal de contrôle, annonçant sa présence et listant les conditions dans
lesquelles il peut traiter un message. Le Dynamic Router stocke les «préférences» de chaque
participant dans une base de règles. Lorsqu'un message arrive, le routeur dynamique évalue toutes
les règles et achemine le message vers le destinataire dont les règles sont remplies.

6
EIP : Routing Patterns
 Les EIP décrivent les Message Routing simples suivants :
 Recipient List : permet de définir un canal pour chaque destinataire. Ensuite Il
essaye d’utiliser une liste de destinataires pour inspecter un message entrant, et
déterminer la liste des destinataires souhaités et transmettre le message à tous
les canaux associés aux destinataires de la liste.

7
EIP : Routing Patterns
 Les EIP décrivent les Message Routing simples suivants :
 Splitter : permet de découper un message en fonction de règles pouvant être
définies statiquement ou dynamiquement. Il est à noter qu'il peut également
adjoindre au message des propriétés comme Message Sequence et Correlation
Identifier en prévision d'une éventuelle réagrégation du message découpé.
 un Splitter est utilisé pour diviser le message composite en une série de
messages individuels, chacun contenant des données liées à un élément.

8
EIP : Routing Patterns
 Les EIP décrivent les Message Routing simples suivants :
 Aggregator : collecter et stocker des messages individuels jusqu'à ce qu'un
ensemble complet de messages associés ait été reçu. Ensuite, l'Aggregator
publie un seul message distillé à partir des messages individuels.
 C'est un Filter à état et il peut disposer des stratégies suivantes :
• Wait for All : attente de tous les messages,
• Timeout : attente pendant un laps de temps donné,
• First Best : transmission de la première fraction de message reçu et ignorance des autres,
• Timeout with Override : attente pendant un laps de temps donné et transmission de la
meilleure fraction de message,
• External Event : attente jusqu’à réception d’un événement extérieur.

9
EIP : Routing Patterns
 Les EIP décrivent les Message Routing simples suivants :
 Resequencer : permet de réordonnancer une série de message.
 C'est un Filter à état qui nécessite, généralement le Message Sequence et qui peut soit émettre
les messages au fils de l'eau (dès qu'il reçoit le message n+1, il l'émet) soit attendre d'avoir reçu
tous les messages à réordonner. Il doit pouvoir :
• stocker les messages ne correspondant pas au suivant,
• gérer l’arrivée d’un nouveau message même si un ré-ordonnancement est en cours,
• gérer l’arrivée d’un message ayant déjà été pris en compte dans un processus de ré-
ordonnancement,
• gérer son buffer afin d’éviter un dépassement de capacité

10
EIP : Routing Patterns
 les EIP décrivent les Message Routing composites suivants :
 Composed Message Processor : permet successivement de recevoir un
message, de le découper, de l’émettre à différents composants puis d’agréger le
résultat de ces derniers dans un unique message.
 Le Composed Message Processor divise le message, achemine les sous-messages vers les
destinations appropriées et regroupe les réponses en un seul message. Le Composed Message
Processor utilise un agrégateur pour rapprocher les demandes qui ont été envoyées aux multiples
systèmes d'inventaire. Chaque unité de traitement envoie un message de réponse à l'agrégateur.
L'agrégateur collecte les réponses individuelles et les traite en fonction d'un algorithme prédéfini,
comme décrit sous Agrégateur.

11
EIP : Routing Patterns
 les EIP décrivent les Message Routing composites suivants :
 Scatter-Gather : permet successivement de recevoir un message, de l’émettre à
différents composants puis d’agréger le résultat de ces derniers dans un unique
message.
 Le Scatter-Gather achemine un message de demande vers un certain nombre
de destinataires. Il utilise ensuite un agrégateur pour collecter les réponses et les
distiller en un seul message de réponse.

12
EIP : Routing Patterns
 les EIP décrivent les Message Routing composites suivants :
 Routing Slip: permet d’utiliser l’architecture du Pipes and Filters dans un
unique composant, c'est-à-dire chaîner linéairement les appels vers différents
filters en masquant les composants appelés et en minimisant les points de
contrôle
 Nous insérons un composant spécial au début du processus qui calcule la liste des étapes
requises pour chaque message. Il joint ensuite la liste en tant que Routing Slip au message et
démarre le processus en routant le message vers la première étape de traitement. Une fois le
traitement réussi, chaque étape de traitement examine le Routing Slip et transmet le message à
l'étape de traitement suivante spécifiée dans la table de routage.

13
EIP : Routing Patterns
 les EIP décrivent les Message Routing composites suivants :
 Process Manager : permet d’invoquer, dans un unique composant, un
ensemble d’opérations s’exécutant de manière non linéaire en minimisant les
points de contrôle.
 Il s’agit d’un composant à état qui doit connaître l’étape du processus et qui est être capable de
gérer plusieurs instances de processus (utilisation d’un identifiant de corrélation). Il est à noter
que pour répondre à ces besoins, certains langages ont émergés tels que :
 XLANG.
 WSFL (Web Services Flow Language),
 BPEL (Business Process Execution Language).

14
EIP : Routing Patterns
 les EIP décrivent les Message Routing composites suivants :
 Message Broker : permet de découpler les destinataires d’un message de
l’émetteur en utilisant un unique point de contrôle qui permet de déterminer le
consommateur d’un message.
 Message Broker : permet de recevoir des messages de plusieurs destinations,
déterminer la bonne destination et acheminer le message vers le canal approprié :
L'utilisation d'un Message Broker central est parfois désignée sous le nom de
style architectural de type hub and Spoke.

15
EIP : Routing Patterns
 Comment pouvons-nous faciliter la recherche du bon Pattern pour un problème
précis ?

L’arbre de décision permet d’aider


à trouver le bon Patern pour un
objectif spécifique en fonction de
simples décisions

RoutingPatternsDecisionTree
16
EIP : Message Transformer
 Les Message Channels et Message Routers éliminent la nécessité pour une application de connaître
l'emplacement de l'autre.
 Avant d’être communiqués, les messages doivent être transformés dans des formats natifs,
normalisés et techniques.
 Un Message Transformer correspond à une catégorie de Filter qui permet de gérer les
problématiques de transformation et d'encapsulation.
 En raison de l'importance des formats de message et de la transformation entre eux, une solution
d'intégration est considérés comme deux systèmes parallèles:
 L'un traite des données de message réelles,
 L'autre des métadonnées, les données qui décrivent les données de message.

17
EIP : Message Transformer
 Les EIP décrivent les Message Transformer suivants:
 Envelope Wrapper : permet d’encapsuler un message ou un objet dans un message compatible
avec le système de messagerie. Le processus se compose de cinq étapes:
 La source de message publie un message dans un format brut. Ce format est déterminé
par la nature de l'application et n'est pas conforme aux exigences de l'infra de messagerie.
 Le Wrapper prend le message brut et le transforme en un format de message conforme
au système de messagerie. Cela peut inclure l'ajout des champs d'en-tête, le cryptage, …
 Le système de messagerie traite les messages conformes.
 Un message résultant est remis à l'Unwrapper qui annule toutes les modifications
apportées par le wrapper : la suppression des champs d'en-tête, le décryptage, ..
 Le destinataire du message reçoit un message en «texte clair».

18
EIP : Message Transformer
 Les EIP décrivent les Message Transformer suivants:
 Content Enricher qui permet d’ajouter des informations au message transmis.
Le Content Enricher utilise des informations à l'intérieur du message entrant (par exemple, les
champs clés) pour récupérer des données à partir d'une source externe. Une fois que Content
Enricher a récupéré les données requises de la ressource, il ajoute les données au message. Les
informations d'origine du message entrant peuvent être transférées dans le message résultant ou
peuvent ne plus être nécessaires, selon les besoins spécifiques de l'application réceptrice. Ces
informations peuvent provenir de :
 Content Enricher lui-même,
 L’environnement système,
 Une entité tierce.

19
EIP : Message Transformer
 Les EIP décrivent les Message Transformer suivants:
 Content Filter : permet d’élaguer le contenu d’un message (confidentialité, …) ou de simplifier
sa structure.
 Le Content Filter ne supprime pas uniquement les éléments de données. Il est utile pour
simplifier la structure du message. De nombreux messages provenant de systèmes externes ou
d'applications empaquetées contiennent de nombreux niveaux de groupes répétitifs imbriqués. Le
niveau d'imbrication superflu et un Content Filter peut être utilisé pour «aplatir» la hiérarchie en
une simple liste d'éléments qui peuvent être plus facilement traités par d'autres systèmes.

20
EIP : Message Transformer
 Les EIP décrivent les Message Transformer suivants:
 Claim Check : permet de diminuer temporairement la taille d’un message en stockant les
informations (système de fichiers, base de données) qui peuvent alors être récupérées
ultérieurement. Le Claim Check pattern comprend les étapes suivantes:
 Un message contenant des données arrive.
 Le composant "Check Luggage" génère une clé unique pour les informations. Cette clé
sera utilisée ultérieurement comme ‘Claim Check’
 Le composant Check Luggage extrait les données du message et les stocke dans un
repository, Il associe les données stockées à la clé.
 Il supprime les données persistantes du message et ajoute le contrôle de réclamation.
 Le Content Enricher peut être utiliser pour récupérer les données à base du ‘Claim Check’

21
EIP : Message Transformer
 Les EIP décrivent les Message Transformer suivants:
 Normalizer : permet de modifier le format d’un message et d’acheminer chaque type via un
Message Translator personnalisé afin que les messages résultants correspondent à un format
commun.
 Le Normalizer utilise un Message Router pour acheminer le message entrant vers le Message
Translator approprié. Cela nécessite que le Message Router détecte le type du message entrant.
De nombreux systèmes de messagerie équipent chaque message d'un champ spécificateur de type
dans l'en-tête du message pour simplifier ce type de tâche.

22
EIP : Message Transformer
 Les EIP décrivent les Message Transformer suivants:
 Canonical Data Model: fournit un niveau supplémentaire d‘échange entre les formats de
données individuels de l'application.
 Si une nouvelle application est ajoutée à la solution d'intégration, seule une transformation
entre le Canonical Data Model doit être créée, indépendamment du nombre d'applications qui
participent déjà.

23

Vous aimerez peut-être aussi