Apache Kafka con .Net 👉De CERO a Experto.

Apache Kafka con .Net 👉De CERO a Experto.

372 Lượt nghe
Apache Kafka con .Net 👉De CERO a Experto.
Te explico cómo implementar Patrón de diseño Publish and Subscribe con .NET y Apache Kafka de Cero a experto con ejemplo de aplicación empresarial 🚨 Github Repo: https://github.com/juancamba/youtube-net/tree/main/KafkaExample 🚩 Atención developers: Cuando os expliqué porqué usar un Broker en vez de una llamada directa olvidé mencionar otra ventaja crucial: 🚨 Si quiero dar de alta un usuario en CRM y además tengo que darlo de alta en facturación, si la llamada es SÍNCRONA (via petición http a un endpoint por ejemplo) y facturación está caído no podría dar de alta el usuario. Como os estaréis imaginando esto en un sistema de Ecommerce es muy negativo ya que podría perder un potencial cliente. ✅ Si lo hago mediante broker, el mensaje será entregado cuando se levante el sistema de facturación, pero me permitiría dar de alta el usuario en CRM sin esperar a que facturación se levante. Esto es porque CRM solo se encarga de entregar el mensaje al bus, es ASÍNCRONO, entendéis? #mediatr #cqrs #csharp #automapper #entityframework #kafka #rabbitmq #rabbit #automapper Qué es Kafka? Apache Kafka es una plataforma distribuida de mensajería orientada a flujos de datos. Fue desarrollada originalmente por LinkedIn y ahora es parte de la Apache Software Foundation. 👉 Se usa principalmente para transmitir, procesar, almacenar y reproducir flujos de datos en tiempo real. ¿Para qué se usa Kafka? Sistemas de logs distribuidos Procesamiento de eventos en tiempo real (event streaming) Comunicación entre microservicios ETL en tiempo real Monitoreo y análisis en vivo (IoT, e-commerce, etc.) Conceptos clave 🧱 Broker Un broker es un servidor Kafka que recibe y distribuye mensajes. Un clúster de Kafka puede tener uno o varios brokers. 📬 Producer El productor es quien envía mensajes a Kafka. Por ejemplo, una aplicación que publica eventos de usuarios. 📥 Consumer El consumidor es quien recibe mensajes de Kafka. Puede haber múltiples consumidores leyendo los mismos datos o datos diferentes. 📦 Topic Un topic es una categoría o canal de mensajes. Los productores envían mensajes a topics, y los consumidores los leen desde allí. 🧩 Partition Cada topic puede estar dividido en particiones, que permiten escalar horizontalmente y mantener el orden dentro de una partición. 📅 Offset Cada mensaje dentro de una partición tiene un offset, que actúa como un identificador único y ayuda a los consumidores a saber qué ya fue leído.