kakfa-broker在管理补偿方面是否存在任何已知问题?顺便说一句,我们面临的问题是当我们尝试重新启动kafka-consumer(即应用程序重新启动)时,有时所有偏移量都重置为0。 完全不知道为什么消费者不能从最后提交的偏移量开始。
我们最终会在产品中面临这个问题,其中整个q事件都将被重播:
我们有10个主题,每个主题属于同一组,每个主题有50个分区,我们会在运行时根据负载增加主题分区和使用者数量。
所有此配置后,它将按预期在本地设置中运行,在部署到产品后,我们发现此类问题并非在每次重新启动时都会出现。 有没有我所缺少的配置。 完全无能为力!
答案 0 :(得分:0)
您需要确保:
1)您使用的是相同的消费者组ID
2)auto.offset.reset
设置为latest
spring.kafka.consumer.group-id=your-consumer-group-id
spring.kafka.consumer.auto-offset-reset=latest
如果您仍然遇到此问题,请尝试启用自动提交
spring.kafka.consumer.enable-auto-commit=true
如果问题消失了,则意味着您的手动提交未按预期工作。
答案 1 :(得分:0)
不要在另一个答案中根据建议启用自动提交;侦听器容器将更可靠地提交偏移量,并且正如您所说的,您始终不会遇到问题。
是否有可能一周没有收到任何记录?
或者,您的经纪人是否有较短的offsets.retention.minutes
属性?
在2.0中,它从默认的1天更改为1周。如果偏移量已过期而已被删除,而您重新启动使用者,则会得到所观察到的行为。