Upload
ayefougil
View
171
Download
0
Tags:
Embed Size (px)
Citation preview
ESB Open Source21 & 22 Octobre 2008 - Paris la Dfense
Willy GOLDGEWICHT Architecte senior Valtech Technology [email protected]
SommaireIntroduction> Qu'est-ce qu'un ESB? , ESB & SOA
1. Un ESB pourquoi faire?> Les patterns d'intgration (EIP) > Mdiation de protocole, Composition de service > Fonctions d'un ESB, EAI & ETL, BPM > ESB & Standards, Apache Servicemix, Apache Camel, PEtALS > Open ESB, Apache Synapse, MULE, Spring Integration, Jboss ESB > Critres de choix , Quel ESB choisir ?
2. Comment mettre en uvre un ESB?3. Comment choisir un ESB ? 4. Retour d'expriences Conclusion
Valtech Days 2008
#2
Introduction> Qu'est-ce qu'un ESB? > ESB & SOA
Qu'est-ce qu'un ESB?Un ESB (Enterprise Service Bus) est un bus logiciel bas sur des composants de connexion et de mdiation sappuyant sur les standards du web. Ces composants forment plus gnralement ce qu'on appelle des composants d'intgration. Leur assemblage forme un processus d'intgration.Connexion Mdiation Mdiation Connexion
Valtech Days 2008
#4
ESB & SOA
Valtech Days 2008
#5
1. Un ESB pourquoi faire?
> Les patterns d'intgration (EIP) > Mdiation de protocole > Composition de service > Fonctions d'un ESB > ESB vs EAI vs ETL > ESB vs BPM
Un ESB pourquoi faire? Introduction : les patterns d'intgrationDans la suite de l'expos on s'appuiera sur le catalogue des patterns d'intgration publi en 2004 dans le livre de Gregor Hohpe et Bobby Woolf : Enterprise Integration Patterns (EIP)Integration Styles Messaging Endpoints Message Construction Messaging Channels Message Routing Message Transformation System Management
Valtech Days 2008
#7
Exemples d'EIP
Valtech Days 2008
#8
Mdiation de protocolesUn ESB peut tre un mdiateur de protocoles. Il prsente l'appelant un service dans un protocole donn et l'implmente par appel d'un service cible dans un autre protocole. Exemple : REST SOAP HTTP
Protocole AValtech Days 2008
Protocole B #9
Exemples de mdiation de protocoleUn appel entrant est rout sur des services cibles dpendant du contexte d'appel : Changement de version Load balancing Adaptation un niveau de QoS requis, ce qui suppose : qu'un service puisse dclarer le niveau de QoS fourni qu'un client puisse spcifier le niveau de QoS requis
Valtech Days 2008
#10
Composition de servicesL'ESB hberge un nouveau service, implment par composition de services de plus bas niveau existants en facade des ressources.
Service propos au client implment par composition de services
Valtech Days 2008
#11
Fonctions d'un ESB
Transport /Routage
Enrichissement de messages
Mdiation ESB Annuaire Transactions
Transformation de messages
Transformation Protocoles
Scurit
Supervision
Valtech Days 2008
#12
EAI & ETLL'EAI (Enterprise Application Integration) est une solution logicielle propritaire et plutt monolithique pour lchange de donnes au fil de leau, fourni avec un ensemble de connecteurs permettant de communiquer avec les bases de donnes, les progiciels, les mainframes, selon divers protocoles. LETL (Extract, Transform & Load) est une solution logicielle ddie la synchronisation des donnes par lot, utilis gnralement pour alimenter les entrepts de donnes pour le dcisionnel (datawarehouse)Talend Studio
Valtech Days 2008
#13
BPM (Business Process Modeling)Le BPM consiste modliser des processus mtier. Exemple en BMPN :
L'exemple du Loan Broker, tir du livre EIP relve-t-il du domaine BPM ou du domaine ESB?
Valtech Days 2008
#14
3. Comment mettre en uvre un ESB?
> ESB & Standards > Apache Servicemix, PEtALS, Open ESB > Apache Camel, Apache Synapse, MULE > Spring Integration, Jboss ESB
Architecture & ConceptsLes ESB Open Source ont des architectures, des concepts, des modes de mise en uvre spcifiques. Une chose qu'ils ont au moins en commun est la mise en uvre de composants d'intgration selon le pattern : pipe & filters:
De plus, configurer un processus d'intgration c'est la fois :
Configurer l'ESB Configurer chacun des composants
Valtech Days 2008
#16
ESB et les standards JBI (Java Business Integration)d'intgration
Spcification dans le monde Java (JSR 208), d'architecture de composants Standard pour la spcification de composants logiciels multi-langages
SCA (Service Component Architecture)
OSGI (Open Service Gateway Initiative) EIP ...
Standard d'origine OSGI Alliance pour la matrise des dpendances dans lemonde Java (JSR 8 : 1999!). Il est la base du mcanisme de plugin Eclipse (Eclipse Equinox).
Valtech Days 2008
#17
Apache ServicemixJBI OSGI SCA?
file ftp http jms
mail xmpp cxf
quartz saxon drools eip
bean camel
IDE Eclipse / FUSE Integration Designer
Valtech Days 2008
#18
PEtALSJBI
IDE Eclipse / CIMERO 2
Filetransfer FTP HTTP JMS
Mail SOAP XMPP XQuare
Bonita CSV EIP BPEL
POJO Script Transcoder XSLT
Valtech Days 2008
#19
SUN Open ESB
JBI
Netbeans / BPELFiletransfer FTP HTTP JMS Mail SOAP LDAP .............. Aspect BPEL Camel BPEL ETL Scripting SQL XSLT
Valtech Days 2008
#20
Apache CamelEIP
DSL : exemple :
Valtech Days 2008
#21
Apache synapseWS-RM WS-Addressing WS-Security Service Registry Load Balancing Cache Spcifique
Service Mediation
Message Mediation (proxy) Mediators Core Transformation Selection Database Advanced EIP Splitter Aggregator
Endpoints HTTP JMS Mail VFS
Valtech Days 2008
#22
MULESpcifique SCA?
Transports 30 +
Transformers Basic (12+) XML Scripting Encryption Compression Encoding Channel Endpoint Router Transformer
IDE Eclipse
Valtech Days 2008
#23
Spring IntegrationEIP
JMS RMI HTTP FILE
FTP MAIL WS Stream
Handler Channel Endpoint Ch.Adapter
Router Splitter Aggregator S.Activator
Valtech Days 2008
#24
Jboss ESBSpcifique
IDE Eclipse (Strotypes UML)
File FTP HTTP JMS
Mail SOAP ..............
BPEL Rules SQL XSLT
Aggregator CBRouter StatRouter Wiretap
Valtech Days 2008
#25
4. Comment choisir un ESB ?
> Critres de choix > Quel ESB choisir ?
Critres de choixFacilit de mise en uvre
IDE Graphique Editeur Intgrateur Equipe ddie
Qualit du support
Qualit de la documentation Composants d'intgration Support des standards
Bibliothque disponible Facilit de dveloppement EIP JBI / SCA
Valtech Days 2008
#27
Quel ESB choisir?
Jboss Jboss ESB
Valtech Days 2008
#28
5. Retour d'expriences
Cas 14 criture d'un fichier transform incluant 5 Envoi d'un mail les informations pour signaler la fin de venant du WS l'opration 1 Lecture d'un fichier Servicemix 3.2.1 2 criture d'un fichier transform 3 Appel d'un WS
Valtech Days 2008
#30
Cas 2
HTTP
JMS
JMS
HTTP
HTTP
JMS
JMS
HTTP
Servicemix 3.2.2
Servicemix 3.2.2
INTRANET
DMZ
Valtech Days 2008
#31
Bilan
BilanLes ESB Open Source sont complexes mettre en uvre et ne disposent pas de toutes les fonctionnalits normalement attendues. Cependant, par leur caractre innovant, ils montrent la voie de ce que pourrait tre l'ESB de demain : un outil s'appuyant sur un IDE de mise en uvre graphique des EIP.
Valtech Days 2008
#33
RfrencesTijs Rademakers , Jos Dirksen Manning 2008 http://www.manning.com/rademakers/ http://www.eclipse.org/stp/
Jeff Davis Manning 2008 (early edition) 2009 (final release) http://www.manning.com/davis/
Valtech Days 2008
#34