Sobes.tech
Junior — Middle

Quale libreria hai usato per interagire con Kafka?

sobes.tech AI

Risposta dell'AI

Per interagire con Kafka nel linguaggio Go, si utilizza spesso la libreria Shopify/sarama. È un client Kafka popolare e ben supportato per Go, che offre un insieme completo di funzioni per produttori e consumatori.

Esempio di un semplice produttore con sarama:

package main

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

func main() {
    producer, err := sarama.NewSyncProducer([]string{"localhost:9092"}, nil)
    if err != nil {
        log.Fatal("Errore nella creazione del produttore", err)
    }
    defer producer.Close()

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

    partition, offset, err := producer.SendMessage(msg)
    if err != nil {
        log.Fatal("Errore nell'invio del messaggio", err)
    }

    log.Printf("Messaggio inviato alla partizione %d all'offset %d", partition, offset)
}

Oltre a sarama, ci sono altre librerie come segmentio/kafka-go, ma sarama è una delle più diffuse.