【发布时间】:2021-03-15 11:00:04
【问题描述】:
我们有一个 kafka 生产者配置为 -
metadata.broker.list=broker1:9092,broker2:9092,broker3:9092,broker4:9092
serializer.class=kafka.serializer.StringEncoder
request.required.acks=1
request.timeout.ms=30000
batch.num.messages=25
message.send.max.retries=3
producer.type=async
compression.codec=snappy
Replication Factor is 3 and total number of partition currently is 108
其余属性为默认值。
这个制作人运行得非常好。然后,由于某种原因,其中一位经纪人倒下了。然后,我们的生产者开始将日志显示为 -
"Failed to update metadata after 60000 ms"。日志中没有其他内容,我们看到了这个错误。在某个时间间隔内,很少有请求被阻塞,即使生产者是异步的。
代理重新启动并运行后,此问题已解决。
这可能是什么原因?根据我的理解,一个经纪人宕机应该不会影响整个系统。
【问题讨论】:
-
你还在用0.8的producer吗?
-
@MickaelMaison 是的,当前版本是 0.8.2.0。我们正在升级。但是,这在这个版本中是预期的吗?
-
@MickaelMaison 如果是kafka 0.8.2.0版本的bug,那这个版本有什么办法可以暂时解决吗?如果代理是分区领导者,是否会发生这种情况,因此对该分区的所有请求都会失败?什么设置可以解决这个问题?
标签: apache-kafka kafka-producer-api