kafka consumer max-poll-records: 1 - 性能

kafka consumer max-poll-records: 1 - performance

我有 spring 使用 kafka 消费者的引导项目。如果有消息到达,我需要处理错误——停止容器。所以我添加了这些设置:

spring.kafka.consumer.max-poll-records: 1

现在我需要知道使用此设置和不使用此设置(默认 500)会对性能产生什么影响(大或小)。如果我保留默认值,那么 kafkaListenerEndpointRegistry.getListenerContainer("myID").stop(); 不会执行,直到 kafka 侦听器处理了批处理中的所有消息,这对我的订单没有好处。

你必须衡量这一点。有脚本 kafka-verifiable-producer.sh 可以帮助你产生大量的消息。在消费者方面,您可以测量使用默认值使用所有消息需要多少时间,以及使用 spring.kafka.consumer.max-poll-records: 1

需要多少时间