Merci d'avoir envoyé votre demande ! Un membre de notre équipe vous contactera sous peu.
Merci d'avoir envoyé votre réservation ! Un membre de notre équipe vous contactera sous peu.
Plan du cours
1. Introduction à Apache Camel Avancé
- Objectifs du cours et aperçu de l'architecture
- Revu des fondamentaux d'Apache Camel
- Rappel des Enterprise Integration Patterns (EIP)
- Nouveautés dans les versions récentes d'Apache Camel
- Bonnes pratiques pour les projets d'intégration entreprise
2. Architecture et concepts avancés d'Apache Camel
- Fonctionnement interne de CamelContext
- Composants, points de terminaison (endpoints), producteurs et consommateurs
- Gestion du cycle de vie des routes
- Modèles de routes (route templates) et configurations de routes
- Injection de dépendances avec Spring Boot et CDI
- Conception d'applications modulaires
3. Enterprise Integration Patterns avancés
- Routage basé sur le contenu (Content-Based Router)
- Routage dynamique (Dynamic Router)
- Liste de destinataires (Recipient List)
- Glissement de routage (Routing Slip)
- Séparateur et Agrégateur (Splitter and Aggregator)
- Réquençeur (Resequencer)
- Multidiffusion et Tap filiaire (Multicast and Wire Tap)
- Dispersion-récolte (Scatter-Gather)
- Pattern Saga
- Consommateur idempotent (Idempotent Consumer)
- Valeur de revendication (Claim Check)
- Pattern Circuit Breaker
4. Techniques de routage avancées
- Résolution dynamique des points de terminaison
- Routage conditionnel et imbriqué
- Policies de route
- Modèles de routes (Route templates)
- Création dynamique de routes
- Rechargement des routes
- Stratégies d'équilibrage de charge
- EIP Service Call
5. Transformation de données et traitement de messages
- Formats de données (JSON, XML, CSV, YAML, Avro)
- Marshalling et démarshalling
- Intégration Bean
- Processeurs et processeurs personnalisés
- Convertisseurs de type
- Transformations XSLT
- JSONPath, XPath et langage Simple
- Support Groovy et scripting
6. Travail avec de gros volumes de données et streaming
- Traitement en streaming
- Mise en cache de flux (Stream caching)
- Gestion des fichiers volumineux
- Traitement par lots (Batch processing)
- Intégrations Fichier et FTP
- Techniques d'optimisation mémoire
- Traitement de messages à haut débit
7. Intégration asynchrone et distribuée
- Routage asynchrone
- Traitement parallèle
- Composants SEDA et VM
- Direct vs Direct-VM
- Pools de threads et concurrence
- Traitement de messages distribué
- Prise en compte de la back-pressure
8. Gestion des erreurs et fiabilité
- Clauses d'exception (Exception Clause)
- Channel de lettres mortes (Dead Letter Channel)
- Gestionnaire d'erreurs par défaut
- Gestionnaire d'erreurs transactionnelles
- Stratégies de retry
- Policies de redélivrance
- Transactions compensatoires
- Construction d'intégrations tolérantes aux pannes
9. Transactions et fiabilité des messages
- Transactions locales et distribuées
- Transactions XA
- Livraison exactement une fois (Exactly-once delivery)
- Mise en œuvre de l'idempotence
- Livraison garantie des messages
- Gestion des transactions avec Spring
10. Ajustement et optimisation des performances
- Goulots d'étranglement de performance
- Techniques d'optimisation des routes
- Sélection efficace des composants
- Optimisation des producteurs et consommateurs
- Stratégies de cache
- Ajustement des pools de threads
- Mise en œuvre de benchmarks pour les applications Camel
11. Intégration d'Apache Camel avec les systèmes de messagerie
- Intégration JMS
- ActiveMQ
- RabbitMQ
- AMQP
- Apache Kafka
- MQTT
- Filaire de messages vs streaming d'événements
- Patterns de messagerie fiable
12. Intégration REST et Services Web
- DSL REST
- Consommateurs et producteurs REST
- Intégration SOAP
- Apache CXF
- Orchestration d'API REST
- Intégration OpenAPI
- Gestion des versions d'API
13. Intégration bases de données et sources de données
- Composant JDBC
- Composant SQL
- Intégration JPA
- Gestion des transactions
- Sondage des bases de données (Polling databases)
- Scénarios ETL
- Concepts de Capture de Données Modifiées (CDC)
14. Intégration Cloud et Microservices
- Apache Camel avec Spring Boot
- Aperçu de Camel K
- Aperçu de Camel Quarkus
- Concepts de déploiement Kubernetes
- Intégrations conteneurisées
- Patterns d'intégration Cloud-native
15. Sécurité dans Apache Camel
- Authentification et autorisation
- Configuration SSL/TLS
- Services REST sécurisés
- Gestion des secrets
- Chiffrement des données
- Intégration OAuth et JWT
16. Monitoring, journalisation et observabilité
- Health Checks de Camel
- Collecte de métriques
- Monitoring JMX
- Intégration Micrometer
- Aperçu OpenTelemetry
- Journalisation structurée
- Tracing distribué
17. Tests des applications Apache Camel
- Tests unitaires avec Camel Test
- Points de terminaison mock
- Tests d'intégration
- Test des applications Spring Boot
- Aperçu de Testcontainers
- Bonnes pratiques pour les tests automatisés
18. Dépannage et débogage
- Diagnostic des problèmes de routage
- Débogage des routes
- Analyse des logs
- Diagnostique des performances
- Problèmes d'intégration courants
- Résolution des problèmes de déploiement
19. Scénarios d'intégration réels
- Intégration d'applications entreprise
- Flux de traitement de fichiers
- Architectures événementielles (Event-driven architectures)
- Médiation d'API
- Stratégies de migration système
- Exemples d'intégration hybride
20. Bonnes pratiques et directives de conception
- Conception de routes maintenables
- Modèles de routes réutilisables
- Gestion de la configuration
- Normes de documentation
- Considérations en matière de gouvernance
- Recommandations de déploiement en production
21. Atelier pratique et synthèse
- Construction d'une solution complète d'intégration entreprise
- Application de multiples Enterprise Integration Patterns
- Intégration des messageries, bases de données et services REST
- Exercice d'ajustement des performances
- Revu des concepts clés
- Questions et réponses
- Pas suivants et ressources d'apprentissage complémentaires
Pré requis
- Bonne connaissance des bases d'Apache Camel
- Expérience en programmation et intégration Java
- Expérience avec les patterns et techniques d'intégration
Audience
- Développeurs
- Architectes d'intégration
- Administrateurs systèmes
21 Heures
Nos clients témoignent (1)
J'ai beaucoup apprécié la flexibilité du formateur, qui a su juger très rapidement de mes connaissances et adapter la formation en fonction. De plus, j'ai beaucoup apprécié qu'il me propose de faire des exercices pratiques personnalisés pour mon besoin au lieu de garder les exercices génériques qu'il avait initialement prévus.