我使用以下代码使用sarama创建了Kafka Producer。
var producer sarama.AsyncProducer // ...这是全局声明
config := sarama.NewConfig()
//config.Producer.Return.Successes = false
//config.Producer.Partitioner = sarama.NewRandomPartitioner
//config.Producer.RequiredAcks = sarama.WaitForLocal
config.Producer.Compression = sarama.CompressionSnappy
config.Producer.Flush.Frequency = 100 * time.Millisecond
producer, errsar = sarama.NewAsyncProducer([]string{"x.x.x.x:9091"}, config)
if errsar != nil {
panic(errsar)
}
一切正常,但是当我重新启动我的卡夫卡..时,我收到错误消息“领导层选举中的分区...”。当我重新启动应用程序时,这实际上是在重新启动生产者,一切正常。
萨拉玛(Sarama)中是否有一个选项,当我重新启动kafka并开始发送消息时,它不会给我分配错误(汇合不存在此问题。。它工作正常。但是sarama为我们提供了更好的性能)
感谢您的帮助。