Aller au contenu
  • Société
    • Qui sommes-nous
    • Nos valeurs
    • Nos partenaires
    • Entreprise citoyenne
    • Régions
  • Services
    • Expertise
    • Formation
    • Développement
    • Migration
    • Infogérance
  • Join the Team
  • Actualités
  • Blog
    • Blog easyteam.fr
    • Blog Cloud Natives
  • Formations
  • Rugb’Easyteam
  • Contact
Menu
  • Société
    • Qui sommes-nous
    • Nos valeurs
    • Nos partenaires
    • Entreprise citoyenne
    • Régions
  • Services
    • Expertise
    • Formation
    • Développement
    • Migration
    • Infogérance
  • Join the Team
  • Actualités
  • Blog
    • Blog easyteam.fr
    • Blog Cloud Natives
  • Formations
  • Rugb’Easyteam
  • Contact
Inscrivez-vous à la newsletter

Inscrivez-vous à la newsletter

Abonnez-vous maintenant et nous vous tiendrons au courant.
Nous respectons votre vie privée. Vous pouvez vous désabonner à tout moment.

Bienvenue sur le Blog d'EASYTEAM (ex ArKZoYd)

  • Accueil
  • Actualités
  • Cloud
  • Infrastructure
  • Données / Sécurité
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
Menu
  • Accueil
  • Actualités
  • Cloud
  • Infrastructure
  • Données / Sécurité
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
  • le 18/01/2019
  • ygamba
  • Développement, Intégration, SOA & Urbanisation, webMethods

webMethods ESB : Framework Publish-Subscribe avec routage dynamique

Partager sur linkedin
LinkedIn
Partager sur twitter
Twitter
Partager sur facebook
Facebook

« Comment un émetteur peut envoyer un message à une liste de récepteurs, liste mise à jour de manière dynamique (sans avoir à redéployer le flux) ? »

 

Dans cet article, je vous propose une implémentation webMethods ESB d’un framework Publish-Subscribe (1 vers N) avec un routage des messages aux différents destinataires administré dynamiquement via fichiers de propriétés.
L’idée ici sera de réaliser une démultiplication de chaque message envoyé par le Publisher vers les Subscribers.
Ce package sera nommé FwkDemultiplication (voir schéma ci-dessous).

Le focus de cet article sera porté par les actions entre la file Queue/FwkDemult et la file Queue/Destinatrice du framework de démultiplication.
Les packages Publisher et Subscriber étant des extractions ou intégrations simples.

 

Implémentation webMethods

1. Fichiers properties

Le fichier à reporter dans le package côté Publisher :

kTo=queue/Destinatrice
kPartitionID=NAME_PARTITION_FILE

Le fichier à reporter dans le package côté Subscriber des noms de connexions créés dans webMethods :

wm.connection.1.*=Subscriber_A
wm.connection.2.*=Subscriber_B
wm.connection.3.*=Subscriber_C

 

2. Service FwkDemultiplicationService

Déclarer un trigger sur le chemin queue/fwkDemlut avec routing vers le service suivant :

 

3. Service demultMsg

Puis Map du kPartititionId afin de récupérer chaque nom de destinataires à attribuer dans le header de chaque message :

Ce champs servira à établir la « connection name » dans le package d’intégration (flux entre la file destinatrice et les subscribers).

Puis envoi dans la file destinatrice :

 

4. Remontée de KPI

MAP dans la LOOP du service dmultMsg avec num2 = 1 (kpi compteur) :

Puis MAP des compteurs et destinataires dans le service FwkDemultipliacationService :

Il ne reste donc plus qu’à dépiler la file Queue/Destinatrice vers la « connection name » de chacun de ses messages contenue dans le paramètre hearder/kPartitionKey. L’ajout dynamique des destinataires pourra donc se faire par la mise à jour des fichiers de propriétés des Subscribers et Publisher sans avoir à modifier ou redéployer l’un des packages du flux.

 

ygamba
ygamba
Voir tous ses articles
Partager sur linkedin
LinkedIn
Partager sur twitter
Twitter
Partager sur facebook
Facebook

1 réflexion sur “webMethods ESB : Framework Publish-Subscribe avec routage dynamique”

  1. pga
    15/02/2019 à 16:35

    Bonjour,

    Je cherche à reproduire ce framework, auriez-vous de la disponibilité pour me le présenter ?

    Merci.

    Répondre

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Les derniers articles

  • Oracle Database 18c : Clonage Point-In-Time de PDBs dans ASM 12/04/2021
  • Provisioning sur OCI : Utiliser Resource Manager (1/2) 05/04/2021
  • Chargement des données Météo depuis une API public ERA5 vers le Cloud AWS 02/04/2021
  • Coloriez et décoloriez vos ordres SQL Oracle 29/03/2021
  • Partie 1 : Architecture Google Kubernetes Engine (GKE) 22/03/2021

Les derniers commentaires

  • chaimaa dans Docker pour les débutants (Partie 1)
  • Guillaume dans [AWS] Coût d'une solution Serverless d'analyse vidéo temps réel
  • Ali Ait-Bachir dans Partie 1 : Architecture Google Kubernetes Engine (GKE)
  • zineb lidya dans Installer/désinstaller 10g en ligne de commande
  • PEDRO dans Contention du listener : Comment désactiver la notification ?
Espace Membres
Mot de passe perdu ?
EASYTEAM

Tour Nova, 71 Boulevard National,
92250 La Garenne-Colombes
Tél. 0800 40 60 40
contact@easyteam.fr

Facebook
Linkedin
Twitter
Navigation
  • Accueil
  • Qui sommes-nous
  • Entreprise citoyenne
  • Nos valeurs
  • Régions
  • Partenaires
  • Contact
  • Support
Menu
  • Accueil
  • Qui sommes-nous
  • Entreprise citoyenne
  • Nos valeurs
  • Régions
  • Partenaires
  • Contact
  • Support
Services
  • Développement
  • Migration
  • Infogérance
  • Expertise
  • Formation
Menu
  • Développement
  • Migration
  • Infogérance
  • Expertise
  • Formation
Blog
  • Cloud
  • Infrastructures
  • Data
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
  • Applications
Menu
  • Cloud
  • Infrastructures
  • Data
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
  • Applications
Copyright 2021 - EASYTEAM, Tous droits réservés
Mentions légales et Politique de confidentialité