Enterprise Service Bus - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

ESB

L'Enterprise Service Bus ou ESB est une technique informatique intergicielle. Son but est avant tout de permettre la communication des applications qui à la base ne sont pas pensées pour fonctionner ensemble (deux ERP - Enterprise Resource Planning ou Progiciel de gestion intégré - provenant de deux éditeurs différents par exemple).

Roy Schulte de la société Gartner inc, en fait la description suivante : "L'ESB est une nouvelle architecture qui exploite les services web, les systèmes orientés messages, le routage intelligent et la transformation. L'ESB agit comme une colonne vertébrale légère et omniprésente de l'intégration à travers laquelle les services logiciels et les composants applicatifs circulent".

On peut considérer l'ESB comme une nouvelle génération d'EAI (en français, Intégration d'applications d'entreprise) construite sur des standards comme XML, JMS ou encore les services web. Aussi, la différence majeure avec l'EAI réside dans le fait que l'ESB propose une intégration complètement distribuée grâce à l'utilisation des conteneurs de services. Ces "mini-serveurs" contiennent la logique d'intégration et peuvent être déposés n'importe où sur le réseau.

Les principes

L'ESB en tant que médiateur entre les clients et les fournisseurs de services s'appuie sur les principes suivants :

  • La découverte dynamique : les services ainsi que la sémantique associée sont enregistrés dans un annuaire partagé.
  • La chorégraphie des processus métiers et l'orchestration des services associés : un outil permet d’orchestrer automatiquement les services nécessaires à l’implémentation des processus collaboratifs représentés graphiquement.
  • La distribution forte : les services sont distribués sur le réseau de l'entreprise ou sur Internet.
  • La communication par messages : les services s’échangent des messages représentés par des documents textuels.

Le terme ESB a été utilisé la première fois par l'éditeur Sonic Software (filiale Progress Software Corporation). D'une certaine façon les ESB constituent une évolution de l'EAI, notamment pour des raisons de performance en cas de grosses volumétries (les traitements sont potentiellement distribués) et de sécurité (éviter le 'Single Point of failure potentiel d'une plate-forme centrale), bien que les EAI/ESB les plus récents se soient améliorés sur ces deux problématiques.

Les cas d'utilisation

  • Usage intra-applicatif

C’est un cas d’usage limité, presque toujours implémenté avec un ESB Open Source, léger et simple à mettre en œuvre. On le retrouve dans des applications ayant un fort besoin d’agilité, qui justifie le surcoût en performance que provoque le passage par un ESB, ou dans des applications proposant une interface multi protocoles (pour des progiciels en marque blanche par exemple) ; le module consommateur de service se trouve alors dans une autre application/système.

  • Usage tactique

L’utilisation tactique correspond à un ESB utilisé au sein d’une entité / département afin de mettre à disposition pour l’ensemble de l’entité des services réutilisables. Les services exposés peuvent être issus :

  1. De nouvelles applications reposant une sur une architecture SOA interne (exposition des services via les standards actuels)
  2. D’applications existantes dont une partie du code applicatif est réutilisé pour exposer des services (exposition des services via les standards actuels)
  3. De systèmes légataires, tels que les mainframes ou AS400 (exposition de services grâce à des connecteurs spécifiques)
  • Usage stratégique

La vision stratégique correspond à l’utilisation de l’ESB pour établir une communication entre les silos, dans le but d’exposer des services utilisés par des processus métier transverses. Comme pour la vision tactique, les services peuvent être issus de diverses sources, voire même de l’ESB tactique qui peut exister dans chacun des silos.

  • Communication externe

Dans ce cas d’usage, l’ESB est destiné à exposer des services pour une utilisation externe à l’entreprise. Dans ce genre d’utilisation, les aspects de sécurité doivent être l’objet d’une attention particulière. Pour cette raison, il est d’usage de ne pas utiliser un ESB interne (tactique ou stratégique), mais de dédier un ESB pour les communications avec l’extérieur. Un ESB pour la communication externe sera généralement placé dans une DMZ.

Page générée en 0.098 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise