Formation Apache Camel
Transcription
Formation Apache Camel
Formation Apache Camel Référence : APACHE-CAMEL-03 Durée : 3 jour(s) Présentation Les systèmes d'information explosant sous le poids des services et des applications développées, il devient de plus en plus complexe de faire communiquer les différentes composantes entre elles. A contrario des solutions précédentes, les problématiques d'intégration sont résolues au travers de frameworks dit « légers » comme Apache Camel. Ces frameworks permettent de relier efficacement et de manière fiable les applications au sein d'un SI et deviennent la brique de base pour la mise en place des architectures SOA actuelles. Nous nous confronterons à des exemples tirés de cas d'usage réels pour mettre en pratique des solutions simples et efficaces au travers de Camel. Objectifs - Présenter les frameworks d'intégration et leur utilité Mise en place avec Apache Camel et les patterns d'intégration (EIP) Mise en œuvre d'une solution d'intégration simple et distribuée Assurer un cadre de développement avec des tests Déployer un environnement fiable et robuste Surveiller et administrer cet environnement Répartition: 50% Théorie, 50% Pratique Public: Développeur, Architectes Pré-requis: Notion de Java et de Spring Programme Introduction aux frameworks d'intégration et à Apache Camel - La problématique d'intégration - Du 'point à point' aux ESB en passant par les EAI - Introduction aux 'Enterprise Integration Patterns' : la boîte à outils d'intégration - Les notions principales : Routage, Transformation, Enrichissement, Découplage - Présentation du framework Apache Camel - Lancer des traitements parallèles - Scalabilité de vos applications Traitements fiables dans un environnement distribué - Ciriticité d'un système / Perte de messages - Gestion des transactions techniques - Techniques de clustering et de failover (Load Balancing & High Availability) - Créer un environnement distribué et fiable Fonctionnement de Camel - Messages Exchange & Properties Les Messages Exchange Patterns Les Routes Le Contexte Le cycle de vie Démarrer Camel Gestion et reprises des erreurs - Les différents types d'erreur Gestion classique et événementielle Gestion transactionnelle des erreurs Mécanismes de compensation Administration & supervision Connectivité Camel – Interfacer des systèmes hétérogènes - Du producteur aux consommateurs - La gamme des composants : fichier, jms, mail, http, ssh, ... - Les endpoints logiques Direct, Seda, VM - Les bases de données - Les Web Services Soap & REST - Les MOM – Message Oriented Middleware Utilisation avec le Framework Spring - Le composant Bean L'approche POJO Utilisation de Proxy beans Intégrer Camel dans votre application JavaEE Routage, transformations et intégration - Les patterns de routage : simples à complexes - Routage dynamique à la demande - Les patterns de transformation : l'intégration des données - Les conversions de formats XML, CSV, JSON, Customs - Le pattern VETO/VETRO : 'Validate / Enrich / Transform / Route / Operate' Tester les flux d'intégration avec Camel - L'intérêt des tests Tests unitaires ou d'intégration ? Apprendre à utiliser les mocks de Camel Bonne pratiques de tests Architectures scalables, asynchrones et parallèles - Les problématiques d'asynchronisme - Une architecture événementielle - Comment et quoi administrer ? - Gestion des logs - Les patterns de supervision système: 'wire tap', 'message store', ... - Développer des briques auto-administrées - Les outils de monitoring disponibles Les 10 commandements pour dompter un chameau - Les bonnes pratiques qui vous permettront de développer un système d'intégration performant, fiable et maintenable - Retour d'expérience Tel: +33(0)1 45 26 19 15 Fax : +33(0)1 75 43 49 92 Email : [email protected]