L'architecture événementielle avec Apache Kafka (PER-449)
- Comprendre les concepts de l'architecture événementielle. - Avoir une compréhension intermédiaire (vision développeur) de Apache Kafka. - Concevoir des flux de données avec Apache Kafka avec notamment le calcul de throughput et du sizing du cluster... Lire la suite
pour tous
Vous devez installer/ou télécharger sur votre ordinateur : Java JDK, un IDE (NetBeans, Eclipse ou intelliJ), Maven/gradle, Docker / Docker Compose, Apache Kafka (pour le CLI) une connection Internet non bridée par un firewall.
- Comprendre les concepts de l'architecture événementielle.
- Avoir une compréhension intermédiaire (vision développeur) de Apache Kafka.
- Concevoir des flux de données avec Apache Kafka avec notamment le calcul de throughput et du sizing du cluster Kafka.
- Développer des applications en Java avec un Producer, Consumer et un KStreams.
- Comprendre le fonctionnement du Schema Registry ainsi que les avantages et enjeux reliés à son usage.
- Comprendre comment anticiper et résoudre les erreurs les plus communes.
- Comprendre les éléments clés à surveiller pour l'opérationnalisation.
Développeur ou Devops avec une connaissance de Java ayant un intérêt pour l'architecture événementielle et/ou Apache Kafka.
ARCHITECTURE ORIENTÉE ÉVÉNEMENTS
- Objectifs
- Définition d'un événement et d'un flux d'événements
- Event Sourcing versus Event Stream Processing
CAS D'USAGE DE L'ARCHITECTURE ÉVÉNEMENTIELLE
- Calcul du throughput
- Sensibilisation au format de données et à son impact
- Sémantiques de garantie de livraison
- Ordre des événements
APACHE KAFKA - LES FONDAMENTAUX
- L'architecture de Apache Kafka
- Broker
- Topic / partition / segment / offset
- Producer, compréhension de l'acknowledgment des messages, anatomie d'un message et sérialisation
- Consumer, désérialisation, stratégie de commit
- Consumer group
- Bases sur la sécurité avec Apache Kafka
- Utilisation du Kafka CLI (exercices pratiques)
- Développer son premier Producer / Consumer (exercices pratiques)
APACHE KAFKA - NOTIONS AVANCÉES
- Rétention et compaction des messages
- Lien entre la réplication, le min insync replicas et le acks
- Impacts de la réplication
- Nombre de partitions : comment le déterminer
- Producer : équilibre entre throughput et latence
- Consumer et ses principales configurations
- Modification des configurations pour voir les impacts (exercices pratiques)
SCHEMA REGISTRY
- Présentation globale et explications sur Avro
- Développement d'un Producer et d'un Consumer avec un schéma (exercices pratiques)
- Dead Letter Queue et Poison Pill (exercices pratiques)
KAFKA STREAMS
- Fonctionnement général (Topology, DSL, KStream, KTable, GlobalKTable)
- Agrégation de données sur le temps (Windowing)
- Développement de KStreams (stateless, stateful et avec windowing)
OPÉRATIONNALISATION, MONITORING ET ALERTING
- Métriques Broker, Producer, Consumer, KStreams
- Usage des commandes CLI pour le monitoring et cas d'usage courants (exercices pratiques)
Attestation de participation.
7h par jour, 8h30 à 16h30.
- OIQ
Entreprise de formation
Formateurs
Formateurs et formatrices ÉTS Formation
Experts actifs et expertes actives dans leur domaine