我正在读这个:
自动提交提交偏移的最简单方法是允许消费者为您执行此操作.如果配置enable.auto.commit = true,则消费者每五秒钟将提交客户端从poll()收到的最大偏移量.五秒间隔是默认值,可通过设置auto.commit.interval.ms来控制.就像消费者中的其他所有内容一样,自动提交由poll循环驱动.无论何时轮询,消费者都会检查是否需要提交,如果是,它将提交它在上次轮询中返回的偏移量.
也许问题是我的英语不好但我不完全理解这个描述.
假设我使用默认间隔的自动提交 - 5秒,并且每7秒轮询一次.在这种情况下,提交将每5秒或每7秒发生一次?
如果民意调查每3秒发生一次,你能澄清一下行为吗?是每5秒还是每6秒发生一次?
我读过这个:
自动提交:您可以将auto.commit设置为true,并将auto.commit.interval.ms属性设置为以毫秒为单位的值.启用此功能后,Kafka使用者将提交响应其poll()调用而收到的最后一条消息的偏移量.poll()调用在set auto.commit.interval.ms的后台发出.
这与答案相矛盾.
你能详细解释这些东西吗?
让我说我有这样的图:
0秒 - 轮询
4秒 - 轮询
8秒 - 轮询
什么时候会提交偏移以及何时提交?