我正在使用以下命令通过kafka-producer cli将文件写入kafka主题
kafka-console-producer --broker-list localhost:9092 --topic foo < output
我在其中输入文件的位置。文件中的每一行都已在我的本地kafka实例上进行了测试,此命令有效。问题是,当我将VPN插入远程测试环境并运行相同的命令时,我收到以下错误(成千上万次),并且在870k条记录中,大约有70k条记录将其发送给该VPN环境上的使用者。
org.apache.kafka.common.errors.TimeoutException: Expiring 30 record(s) for foo-1: 1546 ms has passed since last append
ERROR Error when sending message to topic foo with key: null, value: 545 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)
我试图通过添加标志来提高吞吐量来提高超时时间和批量大小,但是通过的消息数量并没有太大差异(将需要进行更多测试)
kafka-console-producer --broker-list localhost:9092 --timeout 30000 -request-required-acks 1 --batch-size 100000 --topic foo < output