Kafka auto.offset.reset值详解

匿名 (未验证) 提交于 2019-12-03 00:18:01


earliest: automatically reset the offset to the earliest offset,自动将偏移量置为最早的。难道不是topic中各分区的开始?结果还真不是,具体含义如下:

auto.offset.reset值含义解释

earliest

latest

none
topic各分区都存在已提交的offset时,从offset后开始消费;只要有一个分区不存在已提交的offset,则抛出异常

以下为测试详细:

1.同分组下测试

1.1测试一

1.1.1测试环境




1.1.2测试结果

earliest

latest

none

1.1.3测试结论


earliest
none

1.2测试二

1.2.1测试环境


1.2.2测试结果

latest
客户端取到了后生产的10条数据

1.2.3测试结论

当创建一个新分组的消费者时,auto.offset.reset值为latest时,表示消费新的数据(从consumer创建开始,后生产的数据),之前产生的数据不消费。

1.3测试三

1.3.1测试环境



1.3.2测试结果

earliest
消费35条数据,即将剩余的全部数据消费完。

latest









offset:8 partition:3

none

1.3.3测试结论

earliest
latest
none

1.4测试四

1.4.1测试环境



1.4.2测试结果

none










offset:5 partition:2

1.4.3测试结论

值为none时,topic各分区都存在已提交的offset时,从offset后开始消费;只要有一个分区不存在已提交的offset,则抛出异常。

2.不同分组下测试

2.1测试五

2.1.1测试环境


2.1.2 测试结果

earliest
消费50条数据,即将全部数据消费完。

latest
消费0条数据。

none

2.1.3测试结论


topic中已有分组消费数据,新建其他分组ID的消费者时,之前分组提交的offset对新建的分组消费不起作用。

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lishuangzhe7047/article/details/74530417

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!