几种不同的注册方式
- subscribe方式:当主题分区数量变化或者consumer数量变化时,会进行rebalance;
- 注册rebalance监听器,可以手动管理offset
- 不注册监听器,kafka自动管理
- assign方式:手动将consumer与partition进行对应,kafka不会进行rebanlance
关键配置及含义
enable.auto.commit 是否自动提交自己的offset值;默认值时true
auto.commit.interval.ms 自动提交时长间隔;默认值时5000 ms
consumer.commitSync(); offset提交命令;
默认配置
采用默认配置情况下,既不能完全保证At-least-once 也不能完全保证at-most-once;
比如:
在自动提交之后,数据消费流程失败,这样就会有丢失,不能保证at-least-once;
数据消费成功,但是自动提交失败,可能会导致重复消费,这样也不能保证at-most-once;
但是将自