我对Kafka比较陌生。我已经做了一些实验,但是对于消费者补偿我有些不清楚。根据到目前为止的了解,使用方启动时,它将开始读取的偏移量由配置设置确定auto.offset.reset
(如果我错了,请纠正我)。
现在说,例如,该主题中有10条消息(偏移量0到9),一个消费者在崩溃之前(或我杀死该消费者之前)碰巧消耗了其中的5条消息。然后说我重新启动该使用者进程。我的问题是:
如果将
auto.offset.reset
设置为smallest
,它是否总是从偏移量0开始消耗?如果将
auto.offset.reset
设置为largest
,它将从偏移量5开始消耗吗?关于这种情况的行为是否总是确定性的?
如果我的问题不清楚,请随时发表评论。提前致谢。
auto.offset.reset
此后的意义就没有了吗?该设置的唯一意义是什么都不提交(理想情况下是在用户第一次启动时进行)?