Kafka - Développeur
Formation créée le 16/05/2023. Dernière mise à jour le 26/12/2023.
Version du programme : 1
Programme de la formation
Objectif de formation : Acquérir une compréhension des cas d'utilisation d'Apache Kafka et se familiariser avec les différentes APIs de Kafka.
Objectifs de la formation
- Comprendre l'architecture en cluster de Kafka
- Différencier les différents cas d'utilisation de Kafka
- Utiliser les APIs de Kafka pour la production et la consommation de messages
- Utiliser les APIs Kafka Connect et Kafka Admin
- Explorer les APIs Kafka Streams et le serveur kSQLDB
- Configurer les topics en fonction des exigences de fiabilité et de débit de vos applications
Profil des bénéficiaires
Pour qui
- Architectes
- Développeurs
Prérequis
- Connaitre le développement Java
Contenu de la formation
-
Introduction à Apache Kafka (3 heures)
- Origine et évolution d'Apache Kafka : histoire et objectifs du projet
- Cas d'utilisation de Kafka dans différents contextes
- Composants clés du système Kafka : ZooKeeper, brokers, topics, consumers, producers
- Présentation des différentes APIs disponibles
-
Prise en main d'un cluster Kafka (6 heures)
- Le rôle de l'ensemble ZooKeeper dans un cluster Kafka
- Connexion et utilisation de zkCli.sh pour interagir avec ZooKeeper
- Configuration d'un broker Kafka
- Analyse des traces d'un broker
- Structure de stockage du commit log dans Kafka
- Présentation des utilitaires fournis avec la distribution de Kafka
- Travaux pratiques : Démarrage d'un ensemble ZooKeeper, connexion à un cluster Kafka à trois nœuds, création de topics, envoi et réception de messages en utilisant les commandes en ligne
-
Les APIs de Kafka (6 heures)
- Présentation des APIs pour les producteurs (Producers API) et les consommateurs (Consumers API)
- Exemples de frameworks utilisant Kafka
- Utilisation de l'API Connect pour intégrer Kafka à d'autres systèmes
- Présentation de l'API AdminClient pour la gestion des ressources Kafka
- Introduction à l'API Streams pour le traitement des flux de données en temps réel
- Travaux pratiques : Développement d'un producteur de messages, puis d'un consommateur, utilisation d'un framework réactif, utilisation de l'API Connect avec ELK (Elasticsearch, Logstash, Kibana)
-
Réplication et fiabilité (6 heures)
- Stockage des partitions, segments et gestion de la rétention des données dans Kafka
- Réplication des partitions : rôles des leaders, des followers et des ISR (In-Sync Replicas)
- Fonctionnement du contrôleur Kafka, arrêt d'un broker leader ou d'un follower
- Ajout d'un nouveau broker dans un cluster Kafka existant
- Assurer la fiabilité de la production et de la consommation des messages
- Présentation des sémantiques de livraison : Au plus une fois (At Most Once), Au moins une fois (At Least Once), Une seule fois (Exactly Once)
- Outils de validation pour garantir la transmission des messages
- Travaux pratiques : Implémentation des différentes sémantiques de livraison, tests avec redémarrage de brokers et changement de consommateur
Équipe pédagogique
Professionnel expert technique et pédagogique
Suivi de l'exécution et évaluation des résultats
- Émargement numérique
- Mises en situation
- Formulaires d’évaluation de la formation
- Certificat de réalisation de l’action de formation
Ressources techniques et pédagogiques
- Espace intranet de formation
- Documents supports de formation projetés
- Exposés théoriques
- Étude de cas concrets
- Mise à disposition en ligne de documents supports à la suite de la formation
Qualité et satisfaction
Taux de satisfaction des apprenants, nombre d'apprenants, taux et causes des abandons, taux de retour des enquêtes, taux d'interruption en cours de prestation...