doukong1391 2018-03-18 02:54
浏览 61

卡夫卡制片人恐慌

I'm working on building kafka producer based on golang right now. I cannot sent any message from my producer. The panic shown as follow:

producer close, err: kafka: client has run out of available brokers to talk to(Is your cluster reachable?)

I test the kafka-console-consumer and kafka-console-producer, they are all work well on terminal. So, is there anything I missed? Here's the code:

package main
import (
    "github.com/Shopify/sarama"
    "log"
    "os"
    "strings"
)

var (
    logger = log.New(os.Stderr, "[srama]", log.LstdFlags)
)

func main() {
    sarama.Logger = logger

    config := sarama.NewConfig()
    config.Producer.Return.Successes = true
    config.Producer.RequiredAcks = sarama.WaitForAll
    config.Producer.Partitioner = sarama.NewRandomPartitioner

    msg := &sarama.ProducerMessage{}
    msg.Topic = "hello"
    msg.Partition = int32(-1)
    msg.Key = sarama.StringEncoder("key")
    msg.Value = sarama.ByteEncoder("hello, world!")

    producer, err := sarama.NewSyncProducer(strings.Split("localhost:9092", ","), config)//default port
    if err != nil {
        logger.Println("Failed to produce message: %s", err)
        os.Exit(500)
    }
    defer producer.Close()

    partition, offset, err := producer.SendMessage(msg)
    if err != nil {
        logger.Println("Failed to produce message: ", err)
    }
    logger.Printf("partition=%d, offset=%d
", partition, offset)
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥20 sub地址DHCP问题
    • ¥15 delta降尺度计算的一些细节,有偿
    • ¥15 Arduino红外遥控代码有问题
    • ¥15 数值计算离散正交多项式
    • ¥30 数值计算均差系数编程
    • ¥15 redis-full-check比较 两个集群的数据出错
    • ¥15 Matlab编程问题
    • ¥15 训练的多模态特征融合模型准确度很低怎么办
    • ¥15 kylin启动报错log4j类冲突
    • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大