Emploi Start-up Evénements 01 Avis d'expert Vidéos Indicateurs Distribution Telecharger Pro Livres blancs

Le bus de services, plaque tournante des échanges

L'Enterprise Service Bus se charge des aspects techniques. Les entreprises déterminent ainsi plus facilement la dimension métier de leur système d'information, et s'engagent dans l'agrégation de services.
envoyer
par mail
imprimer
l'article
partager sur Viadeo
partager sur Facebook
partager sur LinkedIn
partager sur Scoopeo
partager sur Technorati
partager sur Digg
partager sur Delicious
partager sur Google
partager sur Myspace
partager sur Yahoo!

Une fois chaque application exposée sous la forme d'un ou plusieurs services, l'entreprise doit rationaliser et optimiser leurs échanges. Les raisons en sont multiples. Il s'agit de garantir et de différencier les temps de transport des messages via des accords sur le niveau des services (SLA ou Service Level Agreement), d'assurer la capacité à monter en charge de l'architecture, et de fournir une vision synthétique de l'activité du système d'information (BAM ou Business Activity Monitoring).

Ce rôle est souvent dévolu à un bus de services, ou ESB (Enterprise Service Bus). “ Mais ce peut être aussi un EAI ou un moniteur transactionnel ”, souligne Henry Peyret, analyste chez Forrester Research. Ce point de passage obligé, par lequel transitent les messages, constitue de plus en plus souvent la colonne vertébrale du système d'information.

“ L'ESB aide les services à coopérer, tout en restant faiblement couplés, précise Marc Boullier, directeur technique de Vistali. Le système reste ainsi adaptable et flexible. ” Quand l'usager d'un service l'appelle via un ESB, celui-ci garantit la possibilité de remplacer un service par un autre. Et ce, sans modifier la mise en œuvre de l'usager du service. “ Un ESB est aux services ce qu'un ORB est aux composants. C'est la colle qui rend les services interopérables, administrables, et maîtrisables ”, déclare Marc Boullier.

A l'inverse d'une application traditionnelle, un service n'est qu'une façade – une interface dépourvue d'état qui expose une application. Outre leur fonction de MOM (middleware orienté message), des ESB se différencient en se chargeant des dimensions techniques, jusque-là encapsulées directement dans les applications. “ Gestion des transactions, sécurité, transformation de messages, annuaire de services, etc. ”, énumère Sami Jaber, directeur technique de Valtech Toulouse.

Vers la fusion entre ESB et BPM ?

La plupart des SOA s'orientent vers une architecture Rest (Representational State Protocol). Cette approche consiste à relier les services à l'aide de simples messages XML, qui circulent sur différents protocoles standards : HTTP essentiellement, SMTP, FTP, et d'autres dans une moindre mesure. Le rôle de l'ESB est ici d'isoler la gestion du transport des messages des services. L'interface du service reste la même, mais, par exemple, le protocole de transport peut changer. L'ESB autorise donc l'utilisation, en toute transparence, de différents protocoles et logiciels (MOM, EAI, etc.) afin de transporter un même message entre deux services hétérogènes.

Les éditeurs sont aussi tentés d'intégrer à leur ESB un moteur de BPM (Business Process Management). Les experts ne sont pas tous d'accord avec cette approche. Pourtant, elle marque une évolution majeure dans les architectures d'entreprise : la logique métier et les services techniques qui l'accompagnent (sécurité, etc.) se déplacent au centre du modèle en couche.

“ On est enfin parvenu à isoler au milieu de l'architecture, entre les consommateurs finals et les services qui exposent les données, les processus métier de grosse granularité ”, remarque Sami Jaber. Ce qui permet notamment de gérer de façon distincte deux infrastructures techniques évoluant à des rythmes différents, sous diverses responsabilités.

réponses d'expert : L'expertise de Sami Jaber (directeur technique de Valtech Toulouse)

Sami Jaber intervient régulièrement lors de conférences pour expliquer le rôle et les enjeux des SOA pour l'entreprise.

Comment gérer les transactions au sein d'une SOA ?
“ L'architecture est très distribuée. Mais dans 90 % des cas, les transactions sont autonomes. On utilise alors un verrou ”optimiste“. On ne verrouille pas l'enregistrement. On se contente d'horodater la modification et d'y associer un auteur. Avant de mettre à jour la donnée, le service vérifie qu'il est bien le dernier à y avoir accédé. Si c'est le cas, la modification est prise en compte. ”

Pour quelle raison doit-on réaliser une transaction Acid (Atomique cohérente isolée durable) ?
“ Au sein d'une entreprise, peu de transactions nécessitent d'en arriver là. Surtout si l'architecture est orientée service. Si cela s'impose, il faut s'appuyer sur WS Atomic Transaction, qui opère des transactions distribuées à deux phases. ”

L'ESB est-il une nouvelle génération de MOM ?
“ Non. Il assure d'autres fonctions : annuaire, sécurité, transactions, etc. ESB et serveur d'applications fusionnent pour donner naissance à un serveur d'applications multiprotocole, capable d'exposer nativement un même processus métier sous différentes implémentations techniques. ”

publicité
à lire aussi
SUR LES MÊMES THÈMES
Visual Studio unifie le socle de développement de Microsoft
Microsoft balise le terrain autour de SOA
Parallélisme : des efforts en perspective
Web 2.0 : ne pas négliger la sécurité
Urbaniser, c’est prévoir
Le navigateur se fait système d'exploitation
Quand le système de fichiers devient planétaire
Le navigateur se fait système d'exploitation
01Informatique
01 INFORMATIQUE
L'hebdo de référence des décideurs informatiques.
Micro Hebdo
MICRO HEBDO
L'hebdo qui vous simplifie la micro
et Internet.
L'Ordinateur Individuel
L'ORDINATEUR INDIVIDUEL
Le mensuel informatique qui vous informe et vous conseille.
Tous droits réservés © 1999 - 2009 Internext - 01net.