Kafka 命令行 producer/consumer 有 1 秒延迟
Kafka command line producer/consumer have 1 second latency
我正在使用命令行生产者和消费者对 Kafka 进行测试 运行。
我正在 运行在一个终端机中执行此操作 window
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic tag7
这个在另一个
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic tag7 --zookeeper localhost:2181
但是我发送的数据被消费者打印需要1秒多的时间。我发送的数据是我输入给生产者的,所以基本上每隔几秒发送 1 条消息。是否有任何我可以更改的配置选项,以便 Kafka 代理期望每秒消息很少,从而使消息移动速度显着加快?
我用的是Zookeeper和Kafka的默认配置,所以没怎么配置。
提前致谢!
Kafka 有两个配置参数 - 一个是设置在回答消费者请求之前接收到的最小数据量,另一个是设置在回答请求之前等待此数据到达的最长时间。
您可以尝试添加以下选项:
--consumer-property fetch.max.wait.ms=0 --consumer-property fetch.min.bytes=0
更多信息:
- 查看此issue了解详情。
- 检查kafka consumer configs。
作为Ivan Georgiev didn't work for me (not only because it is about the consumer and not the producer), I opened , and finally also in Apache's Jira and ppatierno的回答(感谢)回答了为什么会发生以及如何解决。
要更改控制台生产者的属性 linger.ms
(默认为 1000ms)和 batch.size
(默认为 16384),您需要在命令行中使用 --timeout
和 --max-partition-memory-bytes
分别,例如,如果你在Kafka的主文件夹中:
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic testConsole --timeout 100
我正在使用命令行生产者和消费者对 Kafka 进行测试 运行。
我正在 运行在一个终端机中执行此操作 window
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic tag7
这个在另一个
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic tag7 --zookeeper localhost:2181
但是我发送的数据被消费者打印需要1秒多的时间。我发送的数据是我输入给生产者的,所以基本上每隔几秒发送 1 条消息。是否有任何我可以更改的配置选项,以便 Kafka 代理期望每秒消息很少,从而使消息移动速度显着加快?
我用的是Zookeeper和Kafka的默认配置,所以没怎么配置。
提前致谢!
Kafka 有两个配置参数 - 一个是设置在回答消费者请求之前接收到的最小数据量,另一个是设置在回答请求之前等待此数据到达的最长时间。
您可以尝试添加以下选项:
--consumer-property fetch.max.wait.ms=0 --consumer-property fetch.min.bytes=0
更多信息:
- 查看此issue了解详情。
- 检查kafka consumer configs。
作为Ivan Georgiev didn't work for me (not only because it is about the consumer and not the producer), I opened
要更改控制台生产者的属性 linger.ms
(默认为 1000ms)和 batch.size
(默认为 16384),您需要在命令行中使用 --timeout
和 --max-partition-memory-bytes
分别,例如,如果你在Kafka的主文件夹中:
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic testConsole --timeout 100