Sobes.tech
Middle+

¿Para qué se utilizaba Kafka?

sobes.tech AI

Respuesta de la IA

Apache Kafka es una plataforma de transmisión de datos distribuida utilizada para construir sistemas de intercambio de mensajes con alta capacidad y baja latencia.

Aplicaciones principales de Kafka:

  • Transmisión y procesamiento de grandes flujos de datos en tiempo real.
  • Organización de colas de mensajes entre microservicios.
  • Recolección y agregación de logs y métricas.
  • Construcción de sistemas de interacción basada en eventos (arquitectura orientada a eventos).

Kafka garantiza almacenamiento confiable de mensajes, escalabilidad y capacidad de procesamiento de datos mediante consumidores.

Ejemplo de uso en Go con la biblioteca sarama:

package main

import (
    "github.com/Shopify/sarama"
    "log"
)

func main() {
    productor, err := sarama.NewSyncProducer([]string{"localhost:9092"}, nil)
    if err != nil {
        log.Fatal(err)
    }
    defer productor.Close()

    msg := &sarama.ProducerMessage{
        Topic: "test_topic",
        Value: sarama.StringEncoder("Hello Kafka"),
    }

    partición, offset, err := productor.SendMessage(msg)
    if err != nil {
        log.Fatal(err)
    }
    log.Printf("Mensaje enviado a la partición %d en el offset %d", partición, offset)
}