Kafka es una plataforma de streaming de eventos de alta velocidad, desarrollada por Confluent (basada en el proyecto Apache Kafka). Permite que los sistemas publiquen y consuman mensajes de forma asíncrona, con alta disponibilidad y capacidad de escalar horizontalmente.
Cómo funciona
Kafka es un sistema de colas de mensajes distribuidas. Los productores (producers) envían mensajes a tópicos (topics), y los consumidores (consumers) se suscriben a tópicos para recibir los mensajes. Cada tópico está particionado en particiones, lo que permite escalabilidad y paralelismo. Kafka mantiene los mensajes persistidos por un periodo configurable, permitiendo que los consumidores recuperen mensajes no procesados.
Ejemplo práctico
Un e-commerce funciona: el sitio envía eventos de clic, agregar al carrito, pago, entrega. Estos eventos se envían a Kafka vía tópicos, y diferentes sistemas consumen: panel de analytics, alertas de stock, sistemas de recomendación, email de confirmación. Cada sistema consume solo los eventos relevantes, sin sobrecargar el código principal de negocios.
Términos relacionados
- fila de mensajes: sistema de mensajería asíncrona
- streaming: procesamiento continuo de eventos
- ETL: extraer, transformar, cargar (Kafka se usa en pipelines de datos)
Cómo probar hoy
Use la documentación de Kafka y ejecute un producer con Python, enviando mensajes a un tópico. Luego, consuma esos mensajes con otro script. En entornos de nube, migre Kafka al Kafka Cloud Service.
Preguntas frecuentes
- ¿Qué es Apache Kafka? Es una plataforma de streaming de eventos de alta velocidad, usada para integrar sistemas, cola de mensajes y procesamiento de datos en tiempo real.
- ¿Kafka es solo una cola de mensajes? No. Kafka es un sistema de streaming de eventos, con persistencia, retención, particionamiento y consumo responsable, además de soporte para procesamiento de stream (KStreams, Kafka Streams).
- ¿En qué casos usar Kafka? En sistemas de negocios que necesitan confiabilidad, escalabilidad y procesamiento de datos en tiempo real, como paneles, eventos, IoT y analytics.