APACHE CAMEL
ET LES
« ENTREPRISE INTEGRATION PATTERNS »
Par : Ouadie LAHDIOUI
PRÉREQUIS
2
+ Java 7
+ Maven
+ Fuse IDE
+ Apache CAMEL
Apache Camel et les Entreprise Integration Patterns
INTÉGRATION D'APPLICATIONS D'ENTREPRISE
POURQUOI LE BESOIN D’INTÉGRATION
4
+ Très peu d’applications vivent en isolation
+ SI complexe, Sous systèmes hétérogènes
...
EXEMPLE D’INTÉGRATION D’UN SYSTÈME D’INFORMATION D’ENTREPRISE
5Apache Camel et les Entreprise Integration Patterns
LE PROBLÈME DES APPLICATIONS INTÉGRÉES POINT À POINT
6Apache Camel et les Entreprise Integration Patterns
CHALLENGES D’INTÉGRATION
7
+ Fiabilité des réseaux
+ Lenteur des réseaux
+ Les données échangées ainsi que le nombre d’app...
OBJECTIF DE L’INTÉGRATION
8
+ Trouver un modèle d’intégration standard et efficace !!
Application BApplication A
+ Protoco...
REPRESENTATIONAL STATE TRANSFERT
INTÉGRATION VS APPLICATIONS DISTRIBUÉES
9
+ Couches dépendantes
+ Communication typiqueme...
REPRESENTATIONAL STATE TRANSFERT
NIVEAUX D'INTÉGRATION D'APPLICATIONS
10
+ Framework d’intégration :
Permet de mettre en p...
NIVEAUX D'INTÉGRATION D'APPLICATIONS
11Apache Camel et les Entreprise Integration Patterns
LES DIFFÉRENTS STYLES D’INTÉGRATION
12
+ File transfer
+ Shared dataBase
+ Remote procedural invocation
+ Asynchronous mes...
FILE TRANSFER
LES DIFFÉRENTS STYLES D’INTÉGRATION
13
+ L’application A exporte ses données dans un format de données commu...
SHARED DATABASE
LES DIFFÉRENTS STYLES D’INTÉGRATION
14
+ Les données sont centralisées dans une base de données partagée p...
REMOTE PROCEDURE INVOCATION
LES DIFFÉRENTS STYLES D’INTÉGRATION
15
+ Appel des services à la demande pour réaliser des opé...
REMOTE PROCEDURE INVOCATION
LES DIFFÉRENTS STYLES D’INTÉGRATION
16
+ Les systèmes envoient des données (Event queue)
+ L’e...
ATTENTION AU DÉVELOPPEMENT D’APPLICATION ASYNCHRONE
17
+ Contexte transactionnel
+ Contexte de sécurité
+ Gestion des erre...
LE BESOIN D’UN « MESSAGING PATTERN LANGUAGE»
18
+ Normaliser les échanges de messages dans un système asynchrone
+ Transpo...
EIP (ENTREPRISE INTEGRATION PATTERNS)
ENTREPRISE INTEGRATION PATTERNS, C’EST QUOI ?
20
+ Design Patterns, 1994
+ Des solutions génériques pour des problèmes spé...
65 PATTERNS
CATALOGUE DES EIP
21Apache Camel et les Entreprise Integration Patterns
PIPES AND FILTERS
22Apache Camel et les Entreprise Integration Patterns
POINT-TO-POINT CHANNEL
23Apache Camel et les Entreprise Integration Patterns
PUBLISH-SUBSCRIBE CHANNEL
24Apache Camel et les Entreprise Integration Patterns
MESSAGE ROUTER
25Apache Camel et les Entreprise Integration Patterns
SPLITTER
26Apache Camel et les Entreprise Integration Patterns
AGGREGATOR
27Apache Camel et les Entreprise Integration Patterns
FRAMWORKS D’INTÉGRATION JAVA
28
+ Apche CAMEL + Spring Integration
Apache Camel et les Entreprise Integration Patterns
FRAMWORKS D’INTÉGRATION JAVA
29
James Strachan
Write
Apache Camel et les Entreprise Integration Patterns
APACHE CAMEL
30
+ Implémentation des EIP
+ Framwork Java OpenSource basé sur des échanges de messages
+ Architecture événe...
APACHE CAMEL
31
CONCISE APPLICATION MESSAGING EXCHANGE LANGUAGE
Apache Camel et les Entreprise Integration Patterns
APACHE CAMEL
32
CONCISE APPLICATION MESSAGING EXCHANGE LANGUAGE
Apache Camel et les Entreprise Integration Patterns
APACHE CAMEL
33
+ Constituent les canaux de communication entre deux endpoints ou plus
+ Chacune possède un seul point d’e...
APACHE CAMEL
34
+ Les messages transitent sur les routes
LES MESSAGES
Exchanges
Apache Camel et les Entreprise Integration...
APACHE CAMEL
35
+ Une Route est le chemin qu’emprunte le message d’un bout à l’autre de la chaîne de
médiation, Ce chemin ...
FUSE IDE
36Apache Camel et les Entreprise Integration Patterns
ET LES ESB ?
37
+ Un ESB est une offre Middleware complète
+ Apache Camel est une boite à outils basée sur les EIP
+ Apach...
TAKING APACHE CAMEL FOR A RIDE
+ Mise en place d’un HotFolder
+ Composants :
Servlet
Scheduler
FTP
Direct
HTTP
Source : ww...
MERCI POUR VOTRE ATTENTION
+ Documentation officielle d’apache Camel : www.camel.apache.org/documentation.html
+ Livres :
...
Prochain SlideShare
Chargement dans…5
×

Apache camel et les entreprise integration patterns

500 vues

Publié le

Apache camel et les entreprise integration patterns

Publié dans : Internet
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
500
Sur SlideShare
0
Issues des intégrations
0
Intégrations
71
Actions
Partages
0
Téléchargements
13
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Apache camel et les entreprise integration patterns

  1. 1. APACHE CAMEL ET LES « ENTREPRISE INTEGRATION PATTERNS » Par : Ouadie LAHDIOUI
  2. 2. PRÉREQUIS 2 + Java 7 + Maven + Fuse IDE + Apache CAMEL Apache Camel et les Entreprise Integration Patterns
  3. 3. INTÉGRATION D'APPLICATIONS D'ENTREPRISE
  4. 4. POURQUOI LE BESOIN D’INTÉGRATION 4 + Très peu d’applications vivent en isolation + SI complexe, Sous systèmes hétérogènes + Les fonctionnalités voulues par un utilisateur résident dans différents systèmes et dans différentes applications Apache Camel et les Entreprise Integration Patterns
  5. 5. EXEMPLE D’INTÉGRATION D’UN SYSTÈME D’INFORMATION D’ENTREPRISE 5Apache Camel et les Entreprise Integration Patterns
  6. 6. LE PROBLÈME DES APPLICATIONS INTÉGRÉES POINT À POINT 6Apache Camel et les Entreprise Integration Patterns
  7. 7. CHALLENGES D’INTÉGRATION 7 + Fiabilité des réseaux + Lenteur des réseaux + Les données échangées ainsi que le nombre d’application à intégrer augment + Changement continu Métier Technique Humain … Apache Camel et les Entreprise Integration Patterns
  8. 8. OBJECTIF DE L’INTÉGRATION 8 + Trouver un modèle d’intégration standard et efficace !! Application BApplication A + Protocole A + Technologie A + Format de données A + Protocole B + Technologie B + Format de données B Apache Camel et les Entreprise Integration Patterns
  9. 9. REPRESENTATIONAL STATE TRANSFERT INTÉGRATION VS APPLICATIONS DISTRIBUÉES 9 + Couches dépendantes + Communication typiquement synchrone + Découplage + Intra-départemental + Applications autonomes + Communication typiquement asynchrone + Inter-départemental et inter-organisationnel Apache Camel et les Entreprise Integration Patterns
  10. 10. REPRESENTATIONAL STATE TRANSFERT NIVEAUX D'INTÉGRATION D'APPLICATIONS 10 + Framework d’intégration : Permet de mettre en place un Pattern d’Intégration d'Entreprise Utilise des APIs standards et diminue nettement les efforts d'implémentations Le code source est plus facile à comprendre pour les autres développeurs + ESB : Enterprise Service Bus Il est basé implicitement sur un framework Un produit beaucoup plus puissant pour le déploiement, l'administration et le monitoring Un meilleur outillage, qui réduit la complexité + Suite d'intégration Offre toutes les fonctionnalités d'un ESB Business Process Management (BPM), le Business Activity Monitoring, le Master Data Management Apache Camel et les Entreprise Integration Patterns
  11. 11. NIVEAUX D'INTÉGRATION D'APPLICATIONS 11Apache Camel et les Entreprise Integration Patterns
  12. 12. LES DIFFÉRENTS STYLES D’INTÉGRATION 12 + File transfer + Shared dataBase + Remote procedural invocation + Asynchronous messaging style Apache Camel et les Entreprise Integration Patterns
  13. 13. FILE TRANSFER LES DIFFÉRENTS STYLES D’INTÉGRATION 13 + L’application A exporte ses données dans un format de données commun + Le fichier est ensuite lu par l’application B + Pratique est facile à mettre en place. + Découplage physique, logique et temporel + Peu fiable – Sécurité - Accés concurrent - Pas de transaction - Difficulté d’exploitation. Apache Camel et les Entreprise Integration Patterns
  14. 14. SHARED DATABASE LES DIFFÉRENTS STYLES D’INTÉGRATION 14 + Les données sont centralisées dans une base de données partagée par toutes les applications + Transactions - Centralisation + Applications liées au schéma - Impossible a mettre en place si on a un partenaire externs – Lent - Évolution difficile Apache Camel et les Entreprise Integration Patterns
  15. 15. REMOTE PROCEDURE INVOCATION LES DIFFÉRENTS STYLES D’INTÉGRATION 15 + Appel des services à la demande pour réaliser des opérations + Object Oriented - Découplage phsique + Pas de découplage logique - Fragile - Pas scalable (Thread d’envoi reste bloqué) - Difficilement interopérable - Point to Point Apache Camel et les Entreprise Integration Patterns
  16. 16. REMOTE PROCEDURE INVOCATION LES DIFFÉRENTS STYLES D’INTÉGRATION 16 + Les systèmes envoient des données (Event queue) + L’envoie d’un message dans un channel est rapide + Le channel assure le découplage des systèmes. + Communication asynchrone « Fire And Forget » Apache Camel et les Entreprise Integration Patterns
  17. 17. ATTENTION AU DÉVELOPPEMENT D’APPLICATION ASYNCHRONE 17 + Contexte transactionnel + Contexte de sécurité + Gestion des erreurs Apache Camel et les Entreprise Integration Patterns
  18. 18. LE BESOIN D’UN « MESSAGING PATTERN LANGUAGE» 18 + Normaliser les échanges de messages dans un système asynchrone + Transporter les messages [Channel Patterns] + Designer les messages [Message Patterns] + Transfert des messages vers sa destination [Router Patterns] + Transformer les messages dans le bon format [Transformation Pattenrs] + Evoyer et réceptionner des messages [Endpoint Patterns] + Gérer et tester le système [Manegement Patterns] Apache Camel et les Entreprise Integration Patterns
  19. 19. EIP (ENTREPRISE INTEGRATION PATTERNS)
  20. 20. ENTREPRISE INTEGRATION PATTERNS, C’EST QUOI ? 20 + Design Patterns, 1994 + Des solutions génériques pour des problèmes spécifiques + Entreprise Integration Patterns, écrit en 2003 et toujours d’actualité + Catalogue de référence sur les EIP Apache Camel et les Entreprise Integration Patterns
  21. 21. 65 PATTERNS CATALOGUE DES EIP 21Apache Camel et les Entreprise Integration Patterns
  22. 22. PIPES AND FILTERS 22Apache Camel et les Entreprise Integration Patterns
  23. 23. POINT-TO-POINT CHANNEL 23Apache Camel et les Entreprise Integration Patterns
  24. 24. PUBLISH-SUBSCRIBE CHANNEL 24Apache Camel et les Entreprise Integration Patterns
  25. 25. MESSAGE ROUTER 25Apache Camel et les Entreprise Integration Patterns
  26. 26. SPLITTER 26Apache Camel et les Entreprise Integration Patterns
  27. 27. AGGREGATOR 27Apache Camel et les Entreprise Integration Patterns
  28. 28. FRAMWORKS D’INTÉGRATION JAVA 28 + Apche CAMEL + Spring Integration Apache Camel et les Entreprise Integration Patterns
  29. 29. FRAMWORKS D’INTÉGRATION JAVA 29 James Strachan Write Apache Camel et les Entreprise Integration Patterns
  30. 30. APACHE CAMEL 30 + Implémentation des EIP + Framwork Java OpenSource basé sur des échanges de messages + Architecture événementielle et transactionnelle + Très bonne intégration avec spring + DSL (Domain Specific Language): Java DSL - Spring XML - Groovy DSL - Scala DSL - Annotation DSL CONCISE APPLICATION MESSAGING EXCHANGE LANGUAGE Apache Camel et les Entreprise Integration Patterns
  31. 31. APACHE CAMEL 31 CONCISE APPLICATION MESSAGING EXCHANGE LANGUAGE Apache Camel et les Entreprise Integration Patterns
  32. 32. APACHE CAMEL 32 CONCISE APPLICATION MESSAGING EXCHANGE LANGUAGE Apache Camel et les Entreprise Integration Patterns
  33. 33. APACHE CAMEL 33 + Constituent les canaux de communication entre deux endpoints ou plus + Chacune possède un seul point d’entrée (from) et une ou plusieurs sorties (to) LES ROUTES Apache Camel et les Entreprise Integration Patterns
  34. 34. APACHE CAMEL 34 + Les messages transitent sur les routes LES MESSAGES Exchanges Apache Camel et les Entreprise Integration Patterns
  35. 35. APACHE CAMEL 35 + Une Route est le chemin qu’emprunte le message d’un bout à l’autre de la chaîne de médiation, Ce chemin pouvant être entrecoupé par ce qu’on appelle des processeurs (Processor) LES PROCESSORS Apache Camel et les Entreprise Integration Patterns
  36. 36. FUSE IDE 36Apache Camel et les Entreprise Integration Patterns
  37. 37. ET LES ESB ? 37 + Un ESB est une offre Middleware complète + Apache Camel est une boite à outils basée sur les EIP + Apache Camel est dis LightWeight (ESB Light) Apache Camel et les Entreprise Integration Patterns
  38. 38. TAKING APACHE CAMEL FOR A RIDE + Mise en place d’un HotFolder + Composants : Servlet Scheduler FTP Direct HTTP Source : www.last-video.com
  39. 39. MERCI POUR VOTRE ATTENTION + Documentation officielle d’apache Camel : www.camel.apache.org/documentation.html + Livres : - EIP: Designing, Building, and Deploying Messaging Solutions - Camel In Action + N'ayez pas peur des Entreprise Integration Patterns (EIP)

×