Sobes.tech
Junior — Middle

Akú knižnicu ste použili na interakciu s Kafka?

sobes.tech AI

Odpoveď od AI

Pre komunikácie s Kafka v jazyku Go sa často používa knižnica Shopify/sarama. Je to populárny a dobre podporovaný klient Kafka pre Go, ktorý poskytuje kompletný súbor funkcií pre producentov a konzumentov.

Príklad jednoduchého producenta s použitím sarama:

package main

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

func main() {
    producer, err := sarama.NewSyncProducer([]string{"localhost:9092"}, nil)
    if err != nil {
        log.Fatal("Chyba pri vytváraní producenta", err)
    }
    defer producer.Close()

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

    partition, offset, err := producer.SendMessage(msg)
    if err != nil {
        log.Fatal("Nepodarilo sa odoslať správu", err)
    }

    log.Printf("Správa odoslaná do partition %d na offset %d", partition, offset)
}

Okrem sarama existujú aj iné knižnice, ako segmentio/kafka-go, ale sarama je jednou z najrozšírenejších.