Kafka客户端:0.11.0.0-cp1 卡夫卡经纪人:
在Kafka经纪人滚动重启时,我们的应用程序在发送给经纪人时丢失了一些消息。我相信滚动重启不会丢失任何消息。这些是我们正在使用的生产者(将生产者与异步send()结合使用,而不使用回调/未来等)设置:
val acksConfig: String = "all",
val retriesConfig: Int = Int.MAX_VALUE,
val retriesBackOffConfig: Int = 1000,
val batchSize: Int = 32768,
val lingerTime: Int = 1,
val maxBlockTime: Int = Int.MAX_VALUE,
val requestTimeOut: Int = 420000,
val bufferMemory: Int = 33_554_432,
val compressionType: String = "gzip",
val keySerializer: Class<StringSerializer> = StringSerializer::class.java,
val valueSerializer: Class<ByteArraySerializer> = ByteArraySerializer::class.java
我在日志中看到了这些异常
2019-03-19 17:30:59,224 [org.apache.kafka.clients.producer.internals.Sender] [kafka-producer-network-thread | producer-1] (Sender.java:511) WARN org.apache.kafka.clients.producer.internals.Sender - Got error produce response with correlation id 1105790 on topic-partition catapult_on_entitlement_updates_prod-67, retrying (2147483643 attempts left). Error: NOT_LEADER_FOR_PARTITION
但是日志显示还剩下重试次数,我很好奇为什么不重试呢?让我知道是否有人有想法吗?
答案 0 :(得分:2)
需要注意的两件事: