Prenez contact avec nous

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

Nombre de participants


Prix par participant

Nos clients témoignent (1)

Cours à venir

Catégories Similaires