1

我在librdkafka消费者实现(版本 0.11)中的fetch.max.message.bytes参数有奇怪的性能问题。我在慢速网络链接(4 Mbps)上使用 kafkacat 运行了一些测试,并收到以下结果:

  • 1024 字节 = 1.740 秒
  • 65536 字节 = 2.670 秒
  • 131072 字节 = 7.070 秒

当我开始调试协议消息时,我注意到了一种提高 RTT 值的方法。

|SEND|rdkafka| Sent FetchRequest (v4, 68 bytes @ 0, CorrId 8) 
|RECV|rdkafka| Received FetchResponse (v4, 131120 bytes, CorrId 8, rtt 607.68ms)

似乎fetch.max.message.bytes值的增加会导致非常高的网络饱和度,但它每个请求只携带一条消息。

另一方面,当我尝试 kafka-console-consumer 时,一切都按预期运行(我通过同一网络链接每秒获得 500 条消息的吞吐量)。

有什么想法或建议可以在哪里查看?

4

1 回答 1

0

您很可能遇到问题 #1384,这是新 v0.11.0 消费者的错误。该错误在慢速链接或带有少量消息的消息集/批处理上尤为明显。

修复正在进行中。

于 2017-09-06T14:05:51.177 回答