Avec un bus de services d'entreprise (ESB),
vous pouvez optimiser la souplesse d'une architecture SOA. Les participants d'une interaction de service sont connectés à l'ESB, plutôt que
directement à un autre module.
Quand le demandeur de services se connecte à l'ESB, l'ESB est responsable de
la transmission de ses demandes, à l'aide de messages, au fournisseur de services
proposant la fonction et la qualité de service requises. L'ESB simplifie les
interactions demandeur-fournisseur et s'occupe de la non concordance des protocoles,
des modèles d'interaction ou des fonctions de service. Un ESB peut également activer ou améliorer le contrôle et la gestion. L'ESB offre des fonctions de gestion et de virtualisation qui implémentent et étendent
les principales fonctionnalités de l'architecture SOA.
L'ESB extrait les fonctions suivantes :
- Emplacement et identité
- Les participants n'ont pas besoin de connaître l'emplacement ou l'identité des
autres participants.
Par exemple, les demandeurs n'ont pas besoin de savoir qu'une demande peut être
traitée par n'importe lequel des nombreux fournisseurs ; les fournisseurs de services
peuvent être ajoutés ou supprimés sans perturbation.
- Protocole d'interaction
- Les participants n'ont pas besoin de partager le même protocole de communication ou
le même style d'interaction. Par exemple, une demande exprimée en tant que
SOAP via HTTP peut être gérée par un fournisseur comprenant uniquement SOAP via Java™ Message Service (JMS).
- Interface
- Les demandeurs et les fournisseurs n'ont pas besoin de s'entendre sur une interface commune.
Un ESB synchronise les différences en convertissant les messages de demande et de réponse
dans un format attendu par le fournisseur.
- Les demandeurs et les fournisseurs n'ont pas besoin de s'entendre sur une interface commune
- Un ESB synchronise les différences en convertissant les messages de demande dans un format attendu par le fournisseur.
- Qualités de (interaction) service
- Les participants, ou administrateurs système, expriment leurs exigences en termes de
qualité de service, notamment l'autorisation des demandes, le chiffrement et
déchiffrement du contenu des messages, l'audit automatique des interactions de service,
ainsi que l'acheminement souhaité de leur demandes (privilégiant la rapidité ou le coût, par exemple).
L'interposition de l'ESB entre les participants vous permet de moduler leurs
interactions via une construction logique appelée médiation.
Les médiations agissent sur les messages en cours entre les demandeurs et le fournisseurs.
Par
exemple, les médiations permettent de trouver des services avec des
caractéristiques spécifiques recherchées par un demandeur, ou de résoudre des
différences d'interface entre demandeurs et fournisseurs. Pour les interactions
complexes, les médiations peuvent être reliées successivement.
Un
bus de services d'entreprise, avec des médiations,
exécute les actions suivantes entre le demandeur et le service :
- Acheminement des messages entre les services. Un bus de services d'entreprise
offre une infrastructure de communication commune permettant de se connecter aux services, et ainsi
aux fonctions métier qu'ils représentent,
sans avoir besoin que des programmeurs écrivent et entretiennent une logique de connectivité complexe.
- Conversion des protocoles de transport entre le demandeur et le service. Un bus de services d'entreprise est un moyen cohérent normalisé
d'intégrer des fonctions métier qui
utilisent des normes informatiques différentes. Il permet d'intégrer des fonctions métier
qui ne pourraient normalement pas communiquer, telles que la connexion d'applications dans des silos
départementaux ou la participation des applications de différentes sociétés aux interactions de service.
- Conversion des formats de message entre le demandeur et le service. Un bus de services d'entreprise permet aux fonctions métier d'échanger des
informations dans des formats différents, le bus garantissant que l'information
distribuée à une fonction métier est au
format requis par cette application.
- Traitement des événements métier provenant de sources différentes.
Un
bus de services d'entreprise prend en charge les interactions
basées sur l'événement en plus des échanges de message pour traiter les demandes de service.
Figure 1. Bus de service d'entreprise.
Le bus de service d'entreprise achemine les messages entre les applications, qui
sont demandeurs ou fournisseurs de services. Le bus convertit les protocoles de transport ainsi que les formats des messages entre les
demandeurs et les fournisseurs.
Dans ce schéma, chaque application utilise un protocole
différent (représenté par les différentes formes géométriques de leurs connecteurs) et
utilise différents formats de message.
Grâce au bus de services d'entreprise, vous vous
consacrez désormais entièrement à votre métier, sans vous soucier des systèmes informatiques. Vous pouvez apporter des modifications ou des ajouts aux services, au besoin ; par
exemple, pour répondre aux évolutions de vos besoins métier, augmenter les capacités
de service ou ajouter de nouvelles fonctionnalités. Vous pouvez effectuer vos modifications en redéfinissant le
bus, avec très peu ou pas d'incidence sur les services et les applications existantes qui
utilisent le bus.