Como o commit automático do consumidor kafka funciona?
estou lendoeste:
Confirmação automática A maneira mais fácil de cometer compensações é permitir que o consumidor faça isso por você. Se você configurar enable.auto.commit = true, a cada cinco segundos o consumidor confirmará o maior deslocamento que seu cliente recebeu da enquete (). O intervalo de cinco segundos é o padrão e é controlado pela configuração auto.commit.interval.ms. Assim como tudo o mais no consumidor, as confirmações automáticas são orientadas pelo loop de pesquisa. Sempre que você faz uma pesquisa, o consumidor verifica se é hora de confirmar e, se for, confirmará as compensações que retornou na última pesquisa.
Talvez o problema seja que meu inglês não é bom, mas eu não entendi completamente essa descrição.
Digamos que eu use a confirmação automática com intervalo padrão - 5 segundos e a pesquisa acontece a cada 7 segundos. Nesse caso, uma confirmação ocorrerá a cada 5 s ou a cada 7 s?
Você pode esclarecer o comportamento se a pesquisa acontecer a cada 3 s? A confirmação acontecerá a cada 5 s ou a cada 6 s?
eu lieste:
Confirmação automática: você pode definir auto.commit como true e definir a propriedade auto.commit.interval.ms com um valor em milissegundos. Depois de ativar isso, o consumidor Kafka confirmará o deslocamento da última mensagem recebida em resposta à sua chamada poll (). A chamada poll () é emitida em segundo plano no conjunto auto.commit.interval.ms.
E isso contradiz a resposta.
Você pode explicar essas coisas em detalhes.
digamos que eu tenho o diagrama assim:
0 s - pesquisa
4 s - pesquisa
8 s - pesquisa
Quando o deslocamento será confirmado e quando?