Sobes.tech
Junior — Middle

Qual biblioteca você usou para interagir com Kafka?

sobes.tech IA

Resposta da IA

Para interagir com Kafka na linguagem Go, muitas vezes é utilizada a biblioteca Shopify/sarama. É um cliente Kafka popular e bem suportado para Go, que fornece um conjunto completo de funções para produtores e consumidores.

Exemplo de um produtor simples usando sarama:

package main

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

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

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

    partition, offset, err := producer.SendMessage(msg)
    if err != nil {
        log.Fatal("Falha ao enviar mensagem", err)
    }

    log.Printf("Mensagem enviada para partição %d no offset %d", partition, offset)
}

Além do sarama, existem outras bibliotecas, como segmentio/kafka-go, mas sarama é uma das mais difundidas.