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
- Revue des Enterprise Integration Patterns (EIPs)
- Nouveautés dans les récentes versions d'Apache Camel
- Meilleures pratiques pour les projets d'intégration d'entreprise
2. Architecture d'Apache Camel et concepts avancés
- Fonctionnement interne de CamelContext
- Composants, points de terminaison (endpoints), producteurs et consommateurs
- Gestion du cycle de vie des routes
- Modèles de routes et configurations de routes
- Injection de dépendances avec Spring Boot et CDI
- Conception d'applications modulaires
3. Enterprise Integration Patterns avancés
- Content-Based Router
- Dynamic Router
- Recipient List
- Routing Slip
- Splitter et Aggregator
- Resequencer
- Multicast et Wire Tap
- Scatter-Gather
- Pattern Saga
- Idempotent Consumer
- Claim Check
- Pattern Circuit Breaker
4. Techniques de routage avancées
- Résolution dynamique des points de terminaison
- Routage conditionnel et imbriqué
- Policies de routes
- 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 des messages
- Formats de données (JSON, XML, CSV, YAML, Avro)
- Démarshallage et marshallage
- Intégration de beans
- Processors et processors personnalisés
- Convertisseurs de types
- Transformations XSLT
- Langages JSONPath, XPath et Simple
- Support Groovy et scripting
6. Gestion des gros volumes de données et du streaming
- Traitement en flux continu (streaming)
- Mise en cache des flux
- Gestion des gros fichiers
- Traitement par lots (batch processing)
- Intégrations de fichiers et FTP
- Techniques d'optimisation de la mémoire
- Traitement de messages à haut volume
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 distribué des messages
- Considérations sur la contre-pression (back-pressure)
8. Gestion des erreurs et fiabilité
- Clauses d'exception
- Died Letter Channel
- Default Error Handler
- Transaction Error Handler
- Stratégies de retry
- Policies 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. Réglage et optimisation des performances
- Points de congestion des performances
- Techniques d'optimisation des routes
- Sélection efficace des composants
- Optimisation des producteurs et consommateurs
- Stratégies de mise en cache
- Réglage des pools de threads
- 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
- Cols de messagerie (Message queues) vs streaming d'événements
- Modèles de messagerie fiable
12. Intégration REST et services Web
- REST DSL
- Consommateurs et producteurs REST
- Intégration SOAP
- Apache CXF
- Orchestration d'APIs REST
- Intégration OpenAPI
- Gestion des versions d'API
13. Intégration de 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 (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
- Modèles d'intégration cloud-native
15. Sécurité dans Apache Camel
- Authentification et autorisation
- Configuration SSL/TLS
- Sécurité des services REST
- Gestion des secrets
- Chiffrement des données
- Intégration OAuth et JWT
16. Surveillance, journalisation et observabilité
- Contrôles de santé (Health Checks) Camel
- Récolte de métriques
- Surveillance JMX
- Intégration Micrometer
- Aperçu d'OpenTelemetry
- Journalisation structurée
- Tracing distribué
17. Test 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
- Meilleures 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
- Diagnostic des performances
- Problèmes courants d'intégration
- Résolution des problèmes de déploiement
19. Scénarios d'intégration réels
- Intégration d'applications d'entreprise
- Flux de traitement de fichiers
- Architectures pilotées par les événements
- Médiation d'API
- Stratégies de migration système
- Exemples d'intégration hybride
20. Meilleures pratiques et directives de conception
- Conception de routes maintenables
- Modèles de routes réutilisables
- Gestion de la configuration
- Normes de documentation
- Considérations de gouvernance
- Recommandations pour le déploiement en production
21. Atelier pratique et synthèse
- Construction d'une solution complète d'intégration d'entreprise
- Application de multiples Enterprise Integration Patterns
- Intégration de la messagerie, des bases de données et des services REST
- Exercice de réglage des performances
- Revue des concepts clés
- Questions et réponses
- Prochaines étapes et ressources d'apprentissage supplémentaires
Pré requis
- Bonne connaissance des bases d'Apache Camel
- Expérience en programmation Java et en intégration
- Expérience avec les modèles et techniques d'intégration
Audience
- Développeurs
- Architectes d'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.