Kafka: Qué es y cómo funciona (en menos de 10')

Ғылым және технология

Un video breve para explicar qué es exactamente Apache Kafka, cómo se usa y qué beneficios tiene en su uso con microservicios.
Timestaps:
00:00 Intro
00:42 Kafka definition
01:16 Relation with MQTT
02:16 Topic and Partition
02:45 Records and Logs
03:10 Offsets
04:10 Replica and Replication
04:46 Replica Leaders and Followers
GEAR USED IN THIS VIDEO
- Recording Kit: kit.co/acontratech
SOUND & MUSIC
- Music: "Wrong" (Royalty free from the KZread Music Library)
DIRECT CONTACT:
- Email: voy@acontra.tech
MY SOCIALS:
- Twitter: / acontratech​
#microservicios #microservices #kafka #softwarearchitecture #cloud #architecture #it

Пікірлер: 55

  • @javiblanco600
    @javiblanco600 Жыл бұрын

    Esta es la mejor explicación corta de Kafka que he visto. Ojalá puedas subir más vídeos al canal.

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Жыл бұрын

    Muchas gracias. Tengo varios scripts hechos y solo me falta un poco más de tiempo para grabar y publicar. El canal tiene vida ;)

  • @compartelo007
    @compartelo0077 ай бұрын

    Gracias por la explicación, saludos.

  • @rodolfoguadalupefriaslugo1856
    @rodolfoguadalupefriaslugo18562 жыл бұрын

    Tus videos son geniales, me han ayudado!

  • @anghelomunozlopez6127
    @anghelomunozlopez6127Ай бұрын

    Excelente video, después de buscar tantos videos este explica muy bien

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Ай бұрын

    Muchas gracias.

  • @cristianmerida2077
    @cristianmerida20775 ай бұрын

    Excelente explicacion!!, nuevo subscriptor

  • @Hufsa
    @Hufsa2 жыл бұрын

    Pues si que me ha ayudado este video y en menos de 7 minutos, muchas gracias.

  • @SAFEBYTELABS

    @SAFEBYTELABS

    2 жыл бұрын

    Muchas gracias y genial!!!!!

  • @borjagalisteo
    @borjagalisteo Жыл бұрын

    Gran explicacion

  • @JoseMiguel32e
    @JoseMiguel32e4 ай бұрын

    molan tus vídeos sigue adelante =)

  • @andresrl72
    @andresrl72 Жыл бұрын

    Gracias Jonathan!

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Жыл бұрын

    A ti, por dedicarme una parte de tu tiempo. Saludos!

  • @jcsuarez73
    @jcsuarez73Ай бұрын

    Suscrito ya, me gusta el estilo claro y directo para explicar , sigue así no llenes tus vídeos de tanta tonterías para mantener audencia siendo exacto, claro y directo ganas más

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Ай бұрын

    Muchas gracias por tus palabras dé ánimo. Intentaste hacerlo bien 👍😁

  • @danntmt
    @danntmt2 жыл бұрын

    Muy bueno!

  • @kamilinux
    @kamilinux Жыл бұрын

    increible video! me ayuda

  • @edsonsabino
    @edsonsabino2 жыл бұрын

    Muchas gracias!

  • @SAFEBYTELABS

    @SAFEBYTELABS

    2 жыл бұрын

    Sin duda, muchas gracias a tí por tu tiempo. Es un placer poder ayudar, aunque sea mínimamente. Un abrazo!

  • @Robot101
    @Robot101Ай бұрын

    Gracias por el vídeo.

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Ай бұрын

    Muchas gracias ;)

  • @efrainpardo1
    @efrainpardo113 күн бұрын

    Muy buena explicacion.

  • @SAFEBYTELABS

    @SAFEBYTELABS

    10 күн бұрын

    Muchas gracias ☺️

  • @ingjuliosg
    @ingjuliosg2 ай бұрын

    gracias por el video

  • @SAFEBYTELABS

    @SAFEBYTELABS

    2 ай бұрын

    Muchas gracias por comentar ;)

  • @andrespaez4948
    @andrespaez4948 Жыл бұрын

    estoy entrando en el mundo de la programacion y he quedado mas perdido, pero con constancia entenderé, no bajarpe la guardia ante el aprendizaje

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Жыл бұрын

    Ánimo, hay cuestiones en tecnología que no son fáciles, ni mucho menos. Empieza a programar operando con ficheros y bases de datos relacionales para poco a poco pasar a otros tipos de backends (nosql documental, nosql time series, caches, pub/sub y colas). Date un tiempo y no desesperes. Saludos!

  • @pc1983JB
    @pc1983JB Жыл бұрын

    hola! muy bien explicado. Me surge una duda, cuando dices que se puede leer a diferentes velocidades, a qué te refieres? puedes configurar un 'consumer' para que lea por ejemplo de la cola cada 5 segundos? Gracias, y un saludo!

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Жыл бұрын

    Hola Juan. Muy buena pregunta :) Cuando digo en el video "a diferentes velocidades" me refiero a dos cosas, 1) que un consumidor puede leer a diferente velocidad que otro consumidor, por la razón que sea, teniendo cada uno un punto concreto de lectura en el offset, es decir, que uno puede leer mas rápido que otro por la razón que sea..... y 2) que cuando un consumidor esta leyendo de un tópico puede decirle al broker "hey! estoy aquí, sigo vivo, pero ocupado trabajando, no me desconectes". Esto es porque si Kafka detecta consumidores que no están constantemente leyendo del broker entiende que están "dead" (muertos) y los desconecta. Pero para que eso no suceda se pueden poner configuraciones de tiempo de "heartbeat" y tiempos de "polling" de tal manera que un consumidor tenga un tiempo determinado para poder decirle a Kafka "hey sigo aquí trabajando" ademas de responder a heartbeats y realizar lecturas del offset. Espero haberte aclarado la consulta. Muchas gracias !!! Saludos !!!

  • @Otaku8760
    @Otaku87602 жыл бұрын

    Hola! me gusto tu explicación me quedo mucho más claro el funcionamiento, actualmente en mi trabajo debo aplicarlo. Me surgió una duda ¿en que casos se aplica la replica de kafka? 🤔

  • @SAFEBYTELABS

    @SAFEBYTELABS

    2 жыл бұрын

    Hola!! La replicación es una práctica habitual en Kafka. Una replica, o simplemente replicar, es el proceso necesario para tener múltiples copias de los datos que viajan por el broker por el solo propósito de asegurar que la información no se pierda. Es to es mejor entendido cuando pensamos en la creación de un cluster, donde múltiples brokers componen el cluster y todos tienen la misma información. La forma de que todos tengan esta información de log es la replicación en sí misma. Espero haberte ayudado a entender mejor el concepto. Saludos!!!!

  • @maymontalvan
    @maymontalvan10 ай бұрын

    Gracias por la información. Podrías dar un ejemplo de como leer esos topics de Kafka con cualquier lenguaje de programación. ?

  • @SAFEBYTELABS

    @SAFEBYTELABS

    10 ай бұрын

    Hola May, muchas gracias por tu comentario. Te adjunto un enlace a un ejemplo de un productor y a un consumidor escrito en Python 3. Espero haber podido ayudarte. Saludos! Repo: github.com/safebytelabs-jgonf/acontratech-examples/tree/main/kafka-101

  • @jacobogonzalezvargas9924
    @jacobogonzalezvargas992421 күн бұрын

    Muy buen video. No conocía kafka. Es parecido a Rabbitmq?

  • @SAFEBYTELABS

    @SAFEBYTELABS

    15 күн бұрын

    Muchas gracias por tu tiempo e interés☺️ Rabbitmq y Apache Kafka son sistemas de mensajería distribuida de código abierto, pero tienen diferentes casos de uso. Kafka es un log puramente distribuido diseñado para una transmisión de eventos eficiente a escala, mientras que RabbitMQ es un sistema de mensajería tradicional diseñado para una publicación y eliminación rápida de mensajes. Saludos!!

  • @daygorolinux
    @daygorolinux2 жыл бұрын

    gracias buen contenido, consulta maestro, explicaba al inicio sobre el tiempo de vida de un mensaje , cuanto es esto y si el mismo es configurable, agradezco su tiempo, saludos desde Ecuador

  • @SAFEBYTELABS

    @SAFEBYTELABS

    2 жыл бұрын

    Hola, me alegra que te gusten los contenidos que produzco :) Cuando un productor envía un mensaje a Kafka lo que esta haciendo realmente es agregarlo a un fichero de log y lo retiene durante un tiempo configurado para ese fichero de los específico. Cuando se crea un tópico se puede configurar el periodo de retención de mensajes y los time-to-live. Como referencia sencilla te adjunto un link con más detalles de configuración explicados de una manera sencilla: www.baeldung.com/kafka-message-retention Saludos!

  • @LuisRicardoLunaSoto
    @LuisRicardoLunaSoto Жыл бұрын

    Recién estoy empezando con Kafka, pero le veo parecido a AWS SQS y RabbitMQ. ¿Se usan para lo mismo?

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Жыл бұрын

    Hola Luís. En pocas palabras los tres son brokers de mensajes, y usan un modelo de pub/sub para operar. No obstante, entre ellos encontrarás diferencias respecto de throughput, capacidad de routing, opciones de funcionamiento aislado/en cluster y acknowledgement de mensajes. Hay un último factor a tener en cuenta: algunos pueden resultar más fáciles de gestionar que otros. A mi apreciación personal, por orden de simplicidad ordenados quedarían así: 1) SQS, 2) Kafka/MSK y finalmente 3) RabbitMQ.

  • @jcorellana29
    @jcorellana2915 күн бұрын

    Muy buena aplicación solo tengo una duda... Si un productor emite un mensaje A y tengo 3 consumidores, los 3 consumidores verán o podrán acceder al mismo mensaje o registro A? O funciona como una cola si un consumidor (el primero que haya tomado el mensaje A) toma de Kafka y desaparece ese mensaje?

  • @SAFEBYTELABS

    @SAFEBYTELABS

    15 күн бұрын

    Hola, muchas gracias por tu comentario. En Kafka, los mensajes son consumidos por cada consumidor de forma independiente, lo que significa que cada consumidor puede acceder al mismo mensaje sin afectar a los otros consumidores. Además, cuando un consumidor lee un mensaje, este mensaje no desaparece. Otros consumidores aún pueden acceder al mismo mensaje, ya que Kafka retiene los mensajes hasta que se configure su retención o se alcance el tiempo de retención predeterminado. Espero haber podido aclarar tu duda. Saludos!

  • @enjaya1
    @enjaya1 Жыл бұрын

    ¿Me puedes recomendar algún curso pàra aprender a usar KAFKA? Gracias!

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Жыл бұрын

    Hola Enjaya, te recomiendo dos lecturas y un curso de pago pero muy económico: Lectura 1: aprenderbigdata.com/introduccion-apache-kafka/ Lectura 2: www.enmilocalfunciona.io/aprendiendo-apache-kafka-parte-1/ Curso de pago (49€): formacionhadoop.com/producto/curso-apache-kafka/ Un saludo!! :)

  • @alanescobedo9265
    @alanescobedo92652 жыл бұрын

    Se pueden ejecutar multi threads en kafka?

  • @SAFEBYTELABS

    @SAFEBYTELABS

    2 жыл бұрын

    Hola Alan, sí que se puede ejecutar múltiples hilos para concurrencia. Kafka internamente organiza los datos de los tópicos en particiones de tal manera que se pueden procesar independientemente. Productores y Consumidores se aprovechan de esta característica para depositar o recoger datos con “pool of threads”. Creo que tu pregunta está más orientada a consumidor que a productor. Te recomiendo esta lectura: www.confluent.io/es-es/blog/kafka-consumer-multi-threaded-messaging/. Saludos!

  • @xSabaku
    @xSabaku Жыл бұрын

    Me suena a SQS de AWS 🤔

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Жыл бұрын

    Hola Ramiro, en AWS sería MSK. Saludos.

  • @LuisRicardoLunaSoto

    @LuisRicardoLunaSoto

    Жыл бұрын

    @@SAFEBYTELABS ¿Cual sería la diferencia? Haciendo la simil, en SQS, tenemos a un productor que puede ser un lambda que deja datos en la cola SQS, y tu desencadenador de lambda sería el consumidor...

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Жыл бұрын

    @@LuisRicardoLunaSoto Hay muchas diferencias que no son solamente el modelo de publicación/subscripción. Por ejemplo, SQS es un servicio elástico y escala de manera ilimitada mientras que MSK soporta 30 brokers por cluster. SQS no garantiza el orden de mensajes, mientras que MSK sí, dentro de la misma partición, cuyo tamaño máximo es 250Gb. SQS persiste datos durante unas dos semanas, mientas que en MSK la persistencia es configurable. En SQS existe una limite de mensaje (256kb) mientras que en MSK este parámetro es configurable, con un máximo de 8Mb. Como ves, las diferencias son sucintas. Espero haberte ayudado. Muchas gracias. Saludos!

  • @LorenzoJimenez
    @LorenzoJimenez5 ай бұрын

    No explicó que es . Es un orquestador de servicios?

  • @SAFEBYTELABS

    @SAFEBYTELABS

    2 ай бұрын

    En muy pocas palabras, Kafka es un sistema o plataforma distribuida de almacenamiento y distribución de eventos. Sirve para, entre otras funciones, precisamente lo contrario de lo que hace un orquestador de servicios, es decir, facilita que los servicios se comuniquen entre sí sin un elemento central que organiza esta comunicación. Espero haberte ayudado. Muchas gracias y saludos!

  • @ituregano
    @ituregano Жыл бұрын

    Muy buenas, el canal está parado?

  • @SAFEBYTELABS

    @SAFEBYTELABS

    Жыл бұрын

    Negativo, sigo preparando materiales, aunque algunos no sean para KZread. Ahora estoy dando un curso de Python por Telegram, aunque he dudado si convertirlo en un curso en KZread ya que veo material de sobra al efecto. ¿Que opinas? Saludos y gracias por le interés ;)

  • @panadeero
    @panadeero6 күн бұрын

    Gracias, entendí menos

  • @SAFEBYTELABS

    @SAFEBYTELABS

    3 күн бұрын

    Más siempre es más 😆🙏

Келесі