我有一个Kafka生产者属于客户与clientid-“p1”和配额为50 mbps。
现在,我使用“bin/kafka producer perf test.sh”测试了我的producer的性能,当写入没有副本的分区时,我能够获得接近50mbps的吞吐量。
我在一个有三个副本的分区上做了同样的实验。但是这一次吞吐量降低到了30Mbps。
我的问题是,Kafka不应该允许生产者仍然获得50 mbps的吞吐量,即使在副本的存在?系统中没有其他任何东西在运行,所以我不知道为什么会发生这种情况?
我有一个Kafka生产者属于客户与clientid-“p1”和配额为50 mbps。
现在,我使用“bin/kafka producer perf test.sh”测试了我的producer的性能,当写入没有副本的分区时,我能够获得接近50mbps的吞吐量。
我在一个有三个副本的分区上做了同样的实验。但是这一次吞吐量降低到了30Mbps。
我的问题是,Kafka不应该允许生产者仍然获得50 mbps的吞吐量,即使在副本的存在?系统中没有其他任何东西在运行,所以我不知道为什么会发生这种情况?
1条答案
按热度按时间tvokkenx1#
你换衣服了吗
acks
生产商的配置?从你的描述看来acks
设置为all
,因此生产者等待,直到发送的数据将在三个代理之间复制,这会影响吞吐量。如果你不改变主意acks
试着把它设置为0
,所以producer根本不会等待来自服务器的任何确认,只是看看它是否影响吞吐量。