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