Apache kafka 在高负载时,获取“;在“生产请求”中收到无效元数据错误;卡夫卡制作人

Apache kafka 在高负载时,获取“;在“生产请求”中收到无效元数据错误;卡夫卡制作人,apache-kafka,kafka-consumer-api,vert.x,kafka-producer-api,Apache Kafka,Kafka Consumer Api,Vert.x,Kafka Producer Api,我有个制作人写了一百万封信给卡夫卡。在处理了大约50万条消息(不确切,在不同的运行中有所不同)后,它开始发出 由于org.apache.kafka.common.errors.NetworkException,在分区测试-2的生成请求中收到无效元数据错误:服务器在收到响应之前已断开连接。。现在将请求元数据更新。在此之后,我的制作人停止响应,我只能选择终止进程 我在卡夫卡制作人配置方面没有太大的改变,但不确定理想情况下我应该改变什么。我已经更新了以下属性 acks=“所有” max.in.flig

我有个制作人写了一百万封信给卡夫卡。在处理了大约50万条消息(不确切,在不同的运行中有所不同)后,它开始发出

由于org.apache.kafka.common.errors.NetworkException,在分区测试-2的生成请求中收到无效元数据错误:服务器在收到响应之前已断开连接。。现在将请求元数据更新。在此之后,我的制作人停止响应,我只能选择终止进程

我在卡夫卡制作人配置方面没有太大的改变,但不确定理想情况下我应该改变什么。我已经更新了以下属性

  • acks=“所有”
  • max.in.flight.requests.per.connection=1
  • 重试次数=3次
  • request.timeout.ms=20000
  • 重试.退避.ms=1000
  • linger.ms=5
  • 批量大小=25600
  • 在我看来,制片人一直在向卡夫卡发送信息,但没有得到回复。另外,我从上面得到的另一条消息是,卡夫卡服务器的组协调器IP_不可用或无效,将尝试重新发现

    附言:


    我使用的是kafka-0.11,一条消息大约有20000个字符,代理有足够的空间容纳所有消息。该主题的复制系数为1(因为正在进行测试),我的群集有3个代理。

    您可以尝试降低批处理大小。否则,除了日志之外,您在代理上还有什么类型的监视?你能公开JMX数据并看到任何异常值吗?@cricket_007我启用了JMX端口,但在那里我可以看到CPU中突然出现峰值,然后这就减少了,我认为这是因为生产者无法从代理接收响应。此外,在我看到互联网上的各种帖子后,我增加了批量大小,以使用批量大小来提高吞吐量。不知道我要去哪里?那么代理呢?@cricket_007对于代理,我可以看到读/写字节的峰值约为1500万。CPU从1%增加到8%,这似乎并不重要。。。您是否尝试过ack=1和多次重试?您可以尝试降低批大小。否则,除了日志之外,您在代理上还有什么类型的监视?你能公开JMX数据并看到任何异常值吗?@cricket_007我启用了JMX端口,但在那里我可以看到CPU中突然出现峰值,然后这就减少了,我认为这是因为生产者无法从代理接收响应。此外,在我看到互联网上的各种帖子后,我增加了批量大小,以使用批量大小来提高吞吐量。不知道我要去哪里?那么代理呢?@cricket_007对于代理,我可以看到读/写字节的峰值约为1500万。CPU从1%增加到8%,这似乎并不重要。。。您是否尝试过ack=1次或多次重试?