我有一个拥有3个节点的Confluent Platform Kafka群集,一切似乎都运行良好但是当产品与控制台发生一些消息时,会收到错误!
命令:
/opt/kafka/confluent-4.0.0/bin/kafka-console-producer --broker-list 109.169.xxx.xxx:9092 --topic sh
错误:
ERROR Error when sending message to topic sh with key: null, value: 1 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback) org.apache.kafka.common.errors.TimeoutException: Expiring 1 record(s) for sh-1: 1538 ms has passed since batch creation plus linger time
答案 0 :(得分:1)
您可以通过高延迟的连接来获得此错误(请查看您经过了1.5秒)。 CLI可以很好地工作,并且比用Java编写相同的简单东西“更好”,因为CLI只是一个Java包装器。当然,Python或kafkacat不会那么冗长
控制台生产者的默认批处理大小是200条记录,这是我上次查看的时间,因此,如果您发送的数据少于此数量,则该批处理最终将到期