在什么时点手动提交offset

来源:7-8 Consumer控制offset起始位置

abulaka

2020-04-16

老师你好,想问一下

  1. 假如consumer每次获取100条数据,是每处理一条数据后提交一下offset,还是100条处理完毕了再提交offset。我看老师的代码里是处理完所有poll的数据以后提交offset。
  2. 假如一共获取了100条数据,但是在处理到第50条出错了,这个时候需要把第50条的offset提交吗,还是整体的都回滚。如果把第50条的offset提交的话应该在什么时点提交,如果都回滚的话,在下一次poll的时候会重新获取100条数据再重新处理吗
写回答

1回答

Allen

2020-04-16

这个是个好问题, 业务场景要看业务实现。 不过一个好的事务建议是全成功或者全失败, 这样有利于你并行处理业务逻辑。 不然哪一条失败提交那条的前提是你在串行处理逻辑, 业务处理速度会不太好。

1
1
abulaka
非常感谢!
2020-04-21
共1条回复

Kafka多维度系统精讲,从入门到实战开发

系统讲解Kafka,实战结合,让你成为使用Kafka的高手

896 学习 · 237 问题

查看课程