1
resposta

[Dúvida] Como manter uma mensagem no topico?

Estou com a seguinte duvida,

Como que faço para que as mensagens continuarem no topico? Por exemplo, o consumidor recebe a mensagem, passa pela regra de negocio, dependendo tira ou continua.

Att. Vinicius

1 resposta

Oi Vinicius! Se tu quiser manter as mensagens no tópico mesmo depois de serem consumidas, o esquema é configurar teus consumidores de uma forma que não façam o commit do offset logo de cara. O offset é tipo a posição da última mensagem consumida no tópico.

Normalmente, os consumidores fazem o commit automaticamente, mas se tu quiser mais controle, pode desativar isso e fazer o commit manual depois de processar a mensagem, só se ela passar pela regra de negócio e tal.

Aí, dependendo do teu código, isso pode variar. Se tiver usando o Consumer API, tem métodos como commitSync ou commitAsync que tu pode chamar na hora certa. Mas cuidado pra não esquecer de fazer o commit, senão tu pode acabar consumindo a mesma mensagem várias vezes.

Qualquer coisa, grita aí!