🏗️Exemple concret
Architecture d'une banque : chaque transaction carte est publiée dans le topic Kafka 'transactions'. Trois consommateurs lisent en parallèle : le système de fraude (alerte en < 50ms), le système de comptabilité (mises à jour du solde) et le data lake (archivage pour analyse). Kafka garantit que personne ne manque un message, même si un consommateur est temporairement hors ligne.
∑ Concept clé
Architecture : Producers → Topics (partitions) → Brokers → Consumer Groups. Offset = position du consommateur dans une partition.
🎯Quand l'utiliser ?
✓Streaming d'événements en temps réel
✓Découplage de microservices (event-driven architecture)
✓Pipeline de données haute disponibilité
✅ Avantages
+Débit extrêmement élevé (millions de messages/seconde)
+Rétention des messages configurable (relecture possible)
+Fault-tolerant et distribué
⚠️ Limites
−Complexité opérationnelle (à moins d'utiliser Confluent Cloud)
−Latence non nulle (quelques ms minimum)
−Surpuissant pour des cas d'usage simples (utiliser RabbitMQ pour ça)
🛠️ Outils principaux
Apache Kafka (open source)
Confluent Cloud (géré)
AWS MSK (Kafka managé)
Kafka Streams
ksqlDB
Data EngineeringStreamingEvent-DrivenTemps réel