0
respostas

Dúvida sobre sistema de mensageria em batch com Kafka

Pessoal essa minha dúvida é mais em questão de qual seria a melhor forma de implementar uma solução pra ganhar performance.

O objetivo da aplicação é atualizar todos os produtos de uma determinada loja, através de algumas etapas como atualizar estoque, atualizar nome e descrição do produto, atualizar valores, etc. Sendo que temos um total de 3000 lojas e cada uma delas possui em médias uns 2000 produtos sendo atualizados em cada uma delas diariamente.

No cenário atual, temos uma única procedure que realiza o processamento de todas as etapas citadas acima e está levando cerca de 2 horas pra cada loja.

Minha ideia é reestruturar isso com mensageria. Criando 1 worker pra cada etapa (com possibilidade de escalar os workers). Porém minha maior dúvida é se seria melhor eu enviar uma mensagem contendo os 2000 produtos pra cada etapa processar ou se itero pelos produtos e envio 2000 mensagens, fazendo que os workers processe produto por produto, em uma mensagem de cada vez.

O que vocês acham que seria mais performático?