我有一个属于客户端的kafka生产者,clientid - “p1”,配额为50 MBps。
现在我使用“bin / kafka-producer-perf-test.sh”测试了我的制作人的性能,并且在写入没有副本的分区时,我能够获得接近50 MBps的吞吐量。
我在有三个副本的分区上尝试了相同的实验。但这次吞吐量降低到30 MBps。
我的问题是,即使存在副本,kafka也不应该允许生产者仍然获得50 MBps的吞吐量?系统中没有其他任何东西在运行,所以我不确定为什么会这样?
答案 0 :(得分:0)
您是否更改了生产者的acks
配置?从您的描述看来acks
似乎设置为all
,因此生产者等待,直到发送的数据将在三个代理中复制,这会影响吞吐量。如果您没有更改acks
尝试将其设置为0
,那么生产者将不会等待来自服务器的任何确认,只是为了查看它是否会影响吞吐量。