1
resposta

[Dúvida] Diferença entre Listener Stream Listener de Mensagem

Qual diferença entre o consumo de mensagem em strems para o consumo de mensagens com um KafkaListener?

1 resposta

Olá, Anderson! A diferença entre o consumo de mensagens com um KafkaListener e o processamento de mensagens em streams é principalmente a maneira como os dados são manipulados.

Quando você usa um KafkaListener, você está basicamente consumindo as mensagens de um tópico do Kafka de maneira semelhante a como faria com um consumidor Kafka tradicional. Cada mensagem é lida e processada de forma individual.

Por outro lado, quando você está processando streams de dados com Kafka, você está lidando com um fluxo contínuo de eventos. Em vez de lidar com mensagens individuais, você está lidando com um fluxo de eventos que você pode manipular de maneira semelhante a como faria com uma coleção de objetos em uma linguagem de programação funcional.

Por exemplo, no código da aula que você mencionou, a classe PixAggregator está usando o Kafka Streams para processar um fluxo de eventos do tópico pix-topic. O método aggregator recebe um StreamBuilder e cria um KStream a partir dele. Este KStream é então usado para realizar várias operações no fluxo de eventos, como filtrar eventos com um valor acima de 1000 e imprimir uma mensagem no console para cada evento.

Em resumo, a principal diferença entre o KafkaListener e o processamento de streams é que o KafkaListener é mais adequado para situações onde você precisa processar mensagens individuais de um tópico do Kafka, enquanto o processamento de streams é mais adequado para situações onde você precisa manipular um fluxo contínuo de eventos.

Espero ter ajudado e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software