卡夫卡生产商能否以复制品的配额率提供数据?

时间:2017-05-02 01:21:50

标签: apache-kafka kafka-producer-api kafka-python

我有一个属于客户端的kafka生产者,clientid - “p1”,配额为50 MBps。

现在我使用“bin / kafka-producer-perf-test.sh”测试了我的制作人的性能,并且在写入没有副本的分区时,我能够获得接近50 MBps的吞吐量。

我在有三个副本的分区上尝试了相同的实验。但这次吞吐量降低到30 MBps。

我的问题是,即使存在副本,kafka也不应该允许生产者仍然获得50 MBps的吞吐量?系统中没有其他任何东西在运行,所以我不确定为什么会这样?

1 个答案:

答案 0 :(得分:0)

您是否更改了生产者的acks配置?从您的描述看来acks似乎设置为all,因此生产者等待,直到发送的数据将在三个代理中复制,这会影响吞吐量。如果您没有更改acks尝试将其设置为0,那么生产者将不会等待来自服务器的任何确认,只是为了查看它是否会影响吞吐量。