Sobes.tech
Junior — Middle

Millist raamatukogu kasutasite Kafka-ga suhtlemiseks?

sobes.tech AI

Vastus AI-lt

Go keeles Kafka-ga suhtlemiseks kasutatakse sageli raamatukogu Shopify/sarama. See on populaarne ja hästi toetatud Kafka klient Go jaoks, mis pakub täielikku funktsioonide komplekti tootjatele ja tarbijatele.

Lihtsa tootja näide sarama kasutamisel:

package main

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

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

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

    partition, offset, err := producer.SendMessage(msg)
    if err != nil {
        log.Fatal("Viga sõnumi saatmisel", err)
    }

    log.Printf("Sõnum saadetud partition %d, offset %d", partition, offset)
}

Lisaks sarama-le on olemas ka teisi teeke, näiteks segmentio/kafka-go, kuid sarama on üks kõige laialdasemalt kasutatavaid.