Sobes.tech
Junior — Middle

Welke bibliotheek heb je gebruikt om met Kafka te communiceren?

sobes.tech AI

Antwoord van AI

Om in Go met Kafka te communiceren, wordt vaak de bibliotheek Shopify/sarama gebruikt. Het is een populaire en goed ondersteunde Kafka-client voor Go, die een volledige set functies biedt voor producers en consumers.

Voorbeeld van een eenvoudige producer met sarama:

package main

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

func main() {
    producer, err := sarama.NewSyncProducer([]string{"localhost:9092"}, nil)
    if err != nil {
        log.Fatal("Fout bij het maken van de producer", err)
    }
    defer producer.Close()

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

    partition, offset, err := producer.SendMessage(msg)
    if err != nil {
        log.Fatal("Fout bij het verzenden van het bericht", err)
    }

    log.Printf("Bericht verzonden naar partition %d op offset %d", partition, offset)
}

Naast sarama zijn er andere bibliotheken, zoals segmentio/kafka-go, maar sarama is een van de meest gebruikte.