Client参数配置
目的
修改Client参数增大测试压力,Client参数主要为kafka-perf工具测试生产和消费场景时的设置参数,主要包括副本数、数据块大小、消息数量等。
方法
在利用Kafka-perf测试工具提交生产或消费命令时,添加以下参数并设置对应的参数值:
参数 |
建议值 |
描述 |
---|---|---|
replication-factor |
2 |
生产数据的副本数,为了保证数据的可靠性,副本数至少为2,该参数是1是很危险的操作。在性能测试的时候,副本数一般就取2。 |
record-size |
1024-65535 |
数据块大小。实际场景的数据块大小是由具体业务所决定的,一般常见业务的数据块大小在1024~65535之间,一般做性能测试会从这个取值范围内选取至少5个数据块大小进行测试。不同数据块大小的生产与消费性能会有所区别(实际和网络大小包性能有关)。 |
num-fetch-threads |
默认 |
拉取数据的线程数量,即为消费者的数量。在网络瓶颈下,调整此参数基本没有效果。 |
threads |
默认 |
消费处理线程数。在网络瓶颈下,调整此参数基本没有效果。 |
messages |
800000000 |
消费消息的条数,由于Kafka在进行消费时,性能会有所起伏与波动,所以在进行性能测试时,需要对不同消息条数进行测试,得到性能最优值。一般该值取8亿左右。 |
request.required.acks |
0 |
发消息后,是否需要broker端返回。默认需要返回,可以尝试设置为0,在数据块大小较小,发送比较频繁的场景下可能有一定效果。 |
linger.ms |
0 |
多条消息聚合的延时,默认为0,一般保持默认值即可。 |
父主题: Kafka性能优化