每当我的消费者从Kafka请求一个新的批处理时,它总是请求1MB的数据,然后它似乎请求下一个1MB,依此类推。有没有人知道接收20MB批量的配置和编程步骤是什么?
答案 0 :(得分:3)
您可以将使用者属性中的属性max.partition.fetch.bytes
设置为您想要的值(默认值为1MB)。
此外,此值必须等于或大于代理配置中的max.message.size
属性,以确保您的使用者能够读取代理接受的所有消息。
最后,如果处理20MB花费的时间太长,您可能希望增加消费者的session.timeout.ms
设置(默认为3秒),以避免经纪人认为您的消费者已经死亡并触发重新平衡。