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
- Revue des fondamentaux d'Apache Camel
- Rappel des Enterprise Integration Patterns (EIPs)
- Nouveautés des versions récentes d'Apache Camel
- Bonnes pratiques pour les projets d'intégration d'entreprise
2. Architecture d'Apache Camel et concepts avancés
- Fonctionnement interne de CamelContext
- Composants, endpoints, producteurs et consommateurs
- Gestion du cycle de vie des routes
- Modèles de route et configurations de route
- 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)
- Bande d'acheminement (Routing Slip)
- Séparateur et Agrégateur (Splitter and Aggregator)
- Reséquençeur (Resequencer)
- Multicast et Wire Tap
- Scatter-Gather
- Patiente Saga (Saga Pattern)
- Consommateur Idempotent (Idempotent Consumer)
- Vérification de réclamation (Claim Check)
- Motif du disjoncteur (Circuit Breaker pattern)
4. Techniques de routage avancées
- Résolution dynamique des endpoints
- Routage conditionnel et imbriqué
- Politiques de route
- Modèles de route
- Création dynamique de routes
- Rechargement des routes
- Stratégies d'équilibrage de charge
- EIP Service Call
5. Transformation de données et traitement des messages
- Formats de données (JSON, XML, CSV, YAML, Avro)
- Marshallage et démarshallage
- Intégration de Beans
- Processors et processors personnalisés
- Convertisseurs de types
- Transformations XSLT
- Langages JSONPath, XPath et Simple
- Support Groovy et scripts
6. Travailler avec des données volumineuses et le streaming
- Traitement en streaming
- Mise en cache de flux (Stream caching)
- Gestion de gros fichiers
- Traitement par lots
- Intégrations Fichier et FTP
- Techniques d'optimisation de la mémoire
- Traitement de messages à fort volume
7. Intégration asynchrone et distribuée
- Routage asynchrone
- Traitement en parallèle
- Composants SEDA et VM
- Direct vs Direct-VM
- Pools de threads et concurrence
- Traitement distribué des messages
- Considérations sur la contre-pression (Back-pressure)
8. Gestion des erreurs et fiabilité
- Clauses d'exception
- Canal de lettres mortes (Dead Letter Channel)
- Gestionnaire d'erreurs par défaut
- Gestionnaire d'erreurs transactionnelles
- Stratégies de retry
- Politiques de redelivery
- 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 des performances et optimisation
- Goulots d'étranglement de performance
- Techniques d'optimisation des routes
- Sélection efficace des composants
- Optimisation des producteurs et consommateurs
- Stratégies de mise en cache
- Ajustement des pools de threads
- Étalonnage (Benchmarking) des applications Camel
11. Intégration d'Apache Camel avec les systèmes de messagerie
- Intégration JMS
- ActiveMQ
- RabbitMQ
- AMQP
- Apache Kafka
- MQTT
- File d'attente de messages vs streaming d'événements
- Motifs de messagerie fiables
12. Intégration REST et des 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 de base 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 des Modifications de Données (Change Data Capture)
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
- Motifs d'intégration natifs du cloud (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. Surveillance, journalisation et observabilité
- Vérifications de santé Camel (Camel Health Checks)
- Récolte de métriques
- Surveillance JMX
- Intégration Micrometer
- Aperçu d'OpenTelemetry
- Journalisation structurée
- Tracing distribué
17. Tests des applications Apache Camel
- Tests unitaires avec Camel Test
- Endpoints mock
- Tests d'intégration
- Tests 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 journaux (Logs)
- Diagnostic des performances
- Problèmes courants d'intégration
- Résolution des problèmes de déploiement
19. Scénarios d'intégration concrets
- Intégration d'applications d'entreprise
- Flux de traitement de fichiers
- Architectures événementielles (Event-driven architectures)
- Médiation d'API
- Stratégies de migration des systèmes
- Exemples d'intégration hybride
20. Bonnes pratiques et directives de conception
- Conception de routes maintenables
- Modèles de route réutilisables
- Gestion de la configuration
- Normes de documentation
- Considérations de gouvernance
- Recommandations de déploiement en production
21. Atelier pratique et résumé
- Construction d'une solution complète d'intégration d'entreprise
- Application de multiples Enterprise Integration Patterns
- Intégration des systèmes de messagerie, bases de données et services REST
- Exercice d'ajustement des performances
- Revue des concepts clés
- Questions et réponses
- Prochaines étapes et ressources d'apprentissage complémentaires
Pré requis
- Bonne connaissance des fondamentaux d'Apache Camel
- Expérience en programmation Java et intégration
- Expérience avec les motifs et techniques d'intégration
Audience cible
- Développeurs
- Architectes en intégration
- Administrateurs système
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.